<?xml version="1.0" encoding="UTF-8"?>
<hibernate-generic datetime="2011-07-10 20:01:13">
<object class="Space" package="com.atlassian.confluence.spaces">
<id name="id">164921345</id>
<property name="name"><![CDATA[Atlassian Integration Guide]]></property>
<property name="key"><![CDATA[ATLAS]]></property>
<property name="description" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="homePage" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<collection name="permissions" class="java.util.Collection"><element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659204</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659205</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659206</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659207</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659208</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659209</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659210</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659211</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659212</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659213</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659214</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659215</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659216</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659217</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659219</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659220</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659221</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659222</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659223</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659224</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659225</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659226</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659228</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659229</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659230</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659231</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659232</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">164659233</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">166428707</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">166428713</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">166428708</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">166428711</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">166428712</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">166428714</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">166428715</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285441</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285442</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285443</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285444</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285445</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285446</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285447</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285448</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285449</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285451</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">244285452</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972461</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972462</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972463</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972464</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972465</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972466</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972467</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972468</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972469</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972470</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972471</id>
</element>
<element class="SpacePermission" package="com.atlassian.confluence.security"><id name="id">246972472</id>
</element>
</collection>
<collection name="pageTemplates" class="java.util.Collection"><element class="PageTemplate" package="com.atlassian.confluence.pages.templates"><id name="id">166395908</id>
</element>
</collection>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.070</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:54:29.345</property>
<property name="spaceType">global</property>
</object>
<object class="BlogPost" package="com.atlassian.confluence.pages">
<id name="id">164496394</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Welcome to Atlassian Product Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529070</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">164598760</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">164598761</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">164598762</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:04:22.296</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:27:17.951</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">164496403</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[deleted]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">226787473</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">226885765</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-10 21:46:14.003</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:06:40.684</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351527</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668510</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203390994</id>
<property name="position">1</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<collection name="children" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</element>
</collection>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423762</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454903</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454904</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454905</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454906</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454907</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454908</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454909</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454910</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454911</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454912</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454913</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454914</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454915</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454916</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205293537</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206209421</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205296631</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206809260</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206803217</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207463283</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207383567</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209458495</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207996257</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209458545</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208004698</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208008206</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209458708</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208044356</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208479874</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208929847</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208933717</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209464016</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210133238</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209470719</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210135576</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209473437</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209553506</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209563052</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209467179</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210120905</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209555427</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660892</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.280</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391003</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391055</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391060</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394671</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391516</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391570</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391649</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391673</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211061312</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392316</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392318</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">234652398</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392844</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393093</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585534</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517841</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351571</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351581</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351598</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351607</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351618</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351633</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351645</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351657</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351659</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065931</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065943</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">232556816</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">241567607</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522053</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487342</id>
<property name="position">10</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="children" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</element>
</collection>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520072</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584113</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584114</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584115</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584116</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584117</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584118</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584119</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584120</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584121</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584122</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584123</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584124</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584125</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584126</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584127</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584128</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584129</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584130</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584131</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584132</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584133</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584134</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584135</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584136</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584137</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584138</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584139</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584140</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584141</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584142</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584143</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584144</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">242584145</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210128953</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209564861</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209576281</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209577400</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210123694</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660889</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.078</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">208502923</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961729</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487362</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487446</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487456</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487457</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487463</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961888</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961915</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961918</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961920</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961925</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961927</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961929</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961942</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961964</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487891</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962211</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487904</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962214</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487912</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487916</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487927</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487930</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487960</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487962</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962457</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962475</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489186</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489382</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489445</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489498</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489503</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489505</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489515</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489518</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489563</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489705</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489707</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585524</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489998</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065942</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065973</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065975</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">232555876</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">242254169</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027141</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027143</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027160</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391067</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423831</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241052415</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241052416</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241052417</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:38:13.592</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:00:16.995</property>
<property name="versionComment"><![CDATA[Changed JDK branding from Sun to Oracle]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912474</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392175</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393687</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065912</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">233148817</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">233148821</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391071</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons PostgreSQL]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423834</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241052488</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241052489</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241052490</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241052491</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:40:12.574</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:18:04.407</property>
<property name="versionComment"><![CDATA[Fixed the URL for the PostgreSQL guide and clarified link to JAR file]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912480</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392181</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209584774</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393729</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065914</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414394</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446923</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 02:34:09.832</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:11:16.379</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351535</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668553</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">179438226</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[JIRA Studio Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">179470859</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">240291159</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204767764</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206817634</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206823984</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207362719</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206829049</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207372303</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207458050</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207475580</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207475597</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207484908</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207486832</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208058319</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208045991</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208477734</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208940331</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208951168</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208951754</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208953179</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208953325</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210132819</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209472635</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136043</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209563677</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209573150</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209574871</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210111868</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2009-01-04 23:19:52.538</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-05-04 02:34:48.982</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">179438232</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240189805</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">214859866</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004506</id>
<property name="position">2</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<collection name="children" class="java.util.Collection"></collection>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037130</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673248</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673249</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673250</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673251</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673252</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673253</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673254</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673255</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673256</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241673257</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.134</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">168002421</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168002724</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004519</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004520</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004751</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004761</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">221450672</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">241567626</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">168198295</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411786</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">167182425</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[JIRA Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">167215190</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105414</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105415</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105416</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105417</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105418</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105419</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105420</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105421</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">168105422</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207469748</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204772660</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479177</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205687572</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206799978</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206821638</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207462389</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207356615</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207372350</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207372982</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207467513</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209455536</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207385444</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207385918</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207468764</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207469620</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209457230</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208056863</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207486612</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207984799</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207986940</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207987471</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208953883</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207999867</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208007813</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208955817</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208050178</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209460768</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210128000</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208944340</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208944868</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208948880</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209462287</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209463910</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207984681</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207993826</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209473569</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209473658</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209471728</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209571155</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209577129</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209578905</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210139396</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210125373</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:19.368</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.487</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">168002835</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168002842</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">167182429</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">167182431</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411713</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411714</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411715</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411716</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411717</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411718</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411719</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411720</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391047</id>
<property name="position">1</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons with JIRA Stage 1 - Set Up Environment and JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423814</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454946</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454947</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454948</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454949</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454950</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454951</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454952</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454953</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454954</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204767739</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206816241</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207372833</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207454774</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208065879</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209460311</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207480979</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207481097</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207481308</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207481679</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208000770</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208005285</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207458287</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210131607</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660891</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.307</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391079</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391086</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394673</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391359</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391368</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391380</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391396</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391650</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392202</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392245</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">234652402</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517842</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351662</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496124</id>
<property name="position">2</property>
<collection name="children" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528822</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">211747158</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">211747159</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204768205</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207357289</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207379284</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207456184</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207457184</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207457748</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208055100</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208058582</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208008899</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208045812</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210127387</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570725</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206827771</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-03 15:58:03.247</property>
<property name="versionComment"><![CDATA[Added link to Dragons]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">166003912</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004514</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004513</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004515</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211648721</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004755</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004760</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004762</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496134</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496151</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496169</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496400</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496402</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496406</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496416</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496410</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165118181</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">169345323</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411785</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">166723650</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">166723670</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227411672</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227444350</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:48.809</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:10:31.884</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">227411691</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351533</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668554</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496132</id>
<property name="position">0</property>
<collection name="children" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391508</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">226169587</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">226169591</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">226787473</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496136</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227411672</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391407</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218279135</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227411670</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414394</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">226791000</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">226791031</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_InclusionsLibrary]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528827</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:17:25.806</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:17:43.573</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496133</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227411670</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227444349</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:38.123</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:09:38.804</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">227411690</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351532</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668552</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496136</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[TreeNavigation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528830</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">164596669</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:19:23.444</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:19:54.677</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496137</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392143</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons Images]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424846</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:38:49.518</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:38:49.518</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522226</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522227</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522228</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522229</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522230</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522231</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522232</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295367</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522339</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522333</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522336</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522337</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522334</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522340</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522341</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522338</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522249</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522252</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522335</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522250</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522251</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295369</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522248</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522253</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522254</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522233</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295368</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295372</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295373</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522255</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295370</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233343365</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">242614286</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">242614287</id>
</element>
</collection>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">211812354</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[atlassian.confluence.css.resource.custom]]></property>
<property name="value"><![CDATA[<string>.wiki-content a:link, .wiki-content a:visited, .wiki-content a:active {&#x0D;
    text-decoration: underline;&#x0D;
}</string>]]></property>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">164954113</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[atlassian.confluence.theme.settings]]></property>
<property name="value"><![CDATA[<map>
  <entry>
    <string>theme.key</string>
    <string>com.atlassian.confluence.plugins.doctheme:documentation</string>
  </entry>
</map>]]></property>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">164954114</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[atlassian.confluence.css.resource.counter]]></property>
<property name="value"><![CDATA[<int>6</int>]]></property>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">164954115</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[atlassian.confluence.space.settings]]></property>
<property name="value"><![CDATA[<com.atlassian.confluence.setup.settings.SpaceSettings>
  <spaceKey>ATLAS</spaceKey>
  <disableLogo>false</disableLogo>
  <colourSchemesSettings>
    <colourSchemeType>theme</colourSchemeType>
  </colourSchemesSettings>
  <doNotSave>false</doNotSave>
</com.atlassian.confluence.setup.settings.SpaceSettings>]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168461907</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168560105</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241053282</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2011-05-23 20:25:59.264</property>
<property name="versionComment"><![CDATA[Replaced all "Moderate" wording with "Medium" wording for that severity level.]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">169115791</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">169115832</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168461908</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168461911</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168461913</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168461919</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168461950</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">229834821</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912712</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">229965828</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">226169591</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">226201933</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-10 00:03:11.406</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-10 00:03:11.406</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">226169587</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-PostgreSQL]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">226201930</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-10 00:01:31.473</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-10 00:01:31.473</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707163</id>
<property name="position">9</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674183</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454876</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454877</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454878</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454879</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454880</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206810998</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204773004</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205293505</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205295082</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206212898</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206536825</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206537340</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208063936</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206810394</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206815315</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207360746</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206820093</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206821491</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206827401</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207463929</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207370857</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207389219</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207984487</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207987778</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208059852</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207994784</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061083</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208470546</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208001872</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208007969</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208062487</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208477296</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210128027</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208936695</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208942410</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210130540</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209464463</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207987700</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208936704</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209563963</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210137771</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209566484</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209568042</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209576562</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209581772</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209582653</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210110581</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210114357</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210118487</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660877</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:12.141</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710193</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710248</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394596</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294671</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294765</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">216432739</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391646</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851078</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238617555</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392200</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392228</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852019</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852022</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707402</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707454</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707495</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707820</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392799</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707855</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392830</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393098</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473498</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393732</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708986</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585516</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585540</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473841</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517560</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474169</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474176</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474179</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474182</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707211</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215485127</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351654</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065969</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065970</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065979</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912767</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668557</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912456</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522323</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375372</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810468</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027100</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295366</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897040</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">242614312</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004376</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Single Sign-On (SSO) across Web Applications]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037004</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665761</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665762</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665763</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665764</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665765</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205294753</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207359918</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206829057</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207478782</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207985239</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207989598</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208004423</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208048412</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208956794</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208477857</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208478110</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208948870</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208953619</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209469346</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209552305</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210115730</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 21:28:52.293</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:02.515</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004455</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528235</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BlogPost" package="com.atlassian.confluence.pages">
<id name="id">166003925</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Welcome to Atlassian Product Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166036588</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166106678</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166106679</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166106680</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166106681</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-12 20:28:32.759</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 20:02:34.569</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166004350</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[deleted]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707120</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons Problem or Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674139</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241672919</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241672920</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">241672921</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:00:48.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:46:28.619</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707791</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707795</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708260</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474152</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">232556830</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">241567605</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707126</id>
<property name="position">2</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674146</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453421</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453422</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453423</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453424</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453425</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453426</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453427</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453428</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453429</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453430</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453431</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453432</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453433</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453434</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453435</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453436</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453437</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453438</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205296367</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206211880</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207357692</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206213744</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207358097</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207471004</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206820448</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207472375</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208065220</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207369387</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207376708</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207379840</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207375143</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207387771</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208053122</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207390399</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207456054</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207456853</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207483241</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207485246</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207485375</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207980881</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207988615</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061181</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207998751</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207999795</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208002679</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208005239</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208007924</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208008742</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208931150</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208931758</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210128992</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208951056</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210131228</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209463664</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209463719</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209557381</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209560014</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209564915</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210139051</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209581241</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210111926</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210124693</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210125129</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660884</id>
</element>
</collection>
<property name="version">80</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.423</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710169</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710178</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710210</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710219</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710236</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710407</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394579</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391390</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391410</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294248</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294263</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391421</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294290</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294292</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294293</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294297</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391446</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391496</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391504</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391511</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294659</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294674</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294745</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294771</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294821</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391615</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294847</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294882</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851158</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851501</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851534</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851545</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392148</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392186</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392209</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392211</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392231</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392288</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851946</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851998</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271735</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707388</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852218</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707499</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707805</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707831</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209584151</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392857</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852638</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852658</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708287</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708293</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473482</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708774</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708932</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708962</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708960</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708964</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708966</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708973</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708987</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708996</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709053</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709076</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709093</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709096</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709422</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517548</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709997</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710030</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707131</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707198</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215485107</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351555</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351573</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065920</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">221450841</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668524</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912732</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522846</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014751</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810444</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295336</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">200868805</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233343444</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496404</id>
<property name="position">1</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<collection name="children" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211649471</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</element>
</collection>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529080</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208045158</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208949866</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:19:17.886</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">165119283</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165119309</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165119306</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165120872</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004363</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004504</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004509</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496408</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961724</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Running Bamboo in a Console Window]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994479</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454294</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660887</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:22:19.918</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.744</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962471</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585521</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351625</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065956</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961722</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994477</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454885</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454886</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454887</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454888</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660888</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:56:48.966</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">208961728</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962470</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962492</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962493</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962554</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208962559</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585520</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351655</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351656</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">233148661</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707149</id>
<property name="position">4</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674169</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453728</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453729</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453730</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453731</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453732</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453733</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453734</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453735</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453736</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453737</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453738</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453739</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453740</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453741</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453742</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453743</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453744</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453745</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453746</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453747</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453748</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453749</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453750</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453751</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453752</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453753</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453754</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453755</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453756</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453757</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206825356</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207363661</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207373705</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207389890</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207469644</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208054975</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061139</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208062113</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208004392</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208046330</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207980920</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570898</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138313</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207357594</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210124525</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660882</id>
</element>
</collection>
<property name="version">106</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.556</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710241</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710333</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710348</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209586501</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710370</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710375</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710378</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710393</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710406</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710411</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394583</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">226791403</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">226791404</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215486284</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294208</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294265</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391585</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294661</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294675</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294752</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294780</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294789</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294800</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294828</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294858</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294871</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294881</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294888</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391628</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851079</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851105</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851228</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851478</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851482</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851489</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851535</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851537</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851539</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851560</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392190</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392216</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392234</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392271</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392274</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392282</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392289</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392356</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851925</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851968</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852001</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392580</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707395</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707432</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707438</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707443</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707497</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852230</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852232</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852233</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392775</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707807</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707837</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392827</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392832</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392860</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271805</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271806</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852662</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852675</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271828</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473475</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473481</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489812</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393700</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585498</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708978</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585504</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">237568030</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517551</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709918</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709925</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203396591</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710012</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710031</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707205</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">204053349</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215485117</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351590</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351595</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065933</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065935</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065938</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065939</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065944</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215483201</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215483210</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215483611</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215483620</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215483799</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912752</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668529</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240913226</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240913283</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240913232</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719913</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295347</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810160</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014744</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014795</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522260</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522342</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810451</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027080</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618773</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810454</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">208306177</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618776</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027203</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027201</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810453</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810452</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618774</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810161</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810242</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810450</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295348</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295349</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295350</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295345</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295346</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027086</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618768</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">200869355</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014741</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014746</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618767</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233963583</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233963629</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233963630</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">234881078</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">234881081</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897033</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241009087</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241009147</id>
</element>
</collection>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">213844695</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">228819066</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707156</id>
<property name="position">8</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674176</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454602</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454603</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454604</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454605</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454606</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454607</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454608</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454609</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454610</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454611</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454612</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454613</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454614</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454615</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454616</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454617</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454618</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454619</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454620</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454621</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454622</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454623</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454624</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454625</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454626</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454627</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454628</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454629</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454630</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454631</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454632</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454633</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454634</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454635</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454636</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454637</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454638</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454639</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454640</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454641</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204771967</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205293323</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206210979</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205294832</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205296505</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685475</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206211659</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206816715</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206823465</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208064619</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208065005</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207368420</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207374850</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207469084</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209455909</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207459101</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207460934</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208054498</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208054556</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207485225</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207978693</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205292547</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207987325</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207987859</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207991767</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208060939</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208003719</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208004273</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209461641</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205293989</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208049171</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208931811</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208934796</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209462962</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209470007</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210135372</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209551869</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209565522</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209566180</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209575445</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138965</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207373884</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209581484</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210117936</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210119439</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210121165</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660878</id>
</element>
</collection>
<property name="version">84</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.900</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616753</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394592</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912478</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391587</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294668</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294759</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391643</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391698</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851071</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851070</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851111</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851186</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851191</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238617550</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392198</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392219</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392239</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392291</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392362</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852003</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852011</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852013</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392585</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707398</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392589</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707451</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707468</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707481</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707498</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392683</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392691</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392688</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392687</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392692</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392724</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392735</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392789</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707814</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707849</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392810</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392812</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392829</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392869</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271812</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852689</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852690</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271832</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852737</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473479</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473485</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473487</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489813</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473505</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473516</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393718</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393751</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393753</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708983</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585514</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473750</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473762</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473815</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473822</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473833</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473838</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473857</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473864</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517558</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203396562</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710014</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474145</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474147</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707208</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215485126</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351551</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351641</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351646</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065964</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065974</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240192326</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215483952</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912765</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668556</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295361</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810464</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522314</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375299</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522320</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522321</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522324</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522322</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810460</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810461</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810466</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810462</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810465</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810467</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810463</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522313</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375296</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295364</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295365</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295358</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295359</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522316</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295360</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375169</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375301</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375361</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015110</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295362</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295363</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375298</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375303</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897038</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897039</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241698201</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241698204</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241698205</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241698209</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241698210</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241698211</id>
</element>
</collection>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">232718456</id>
</element>
</collection>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">211353675</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[com.atlassian.confluence.plugins.doctheme]]></property>
<property name="value"><![CDATA[<com.atlassian.confluence.plugins.doctheme.Settings>
  <header></header>
  <footer>{include:ALLDOC:_Documentation Footer|nopanel=true}&#x0D;
{include:ALLDOC:_Copyright Notice|nopanel=true}</footer>
  <navigation>h4. Integration Documentation&#x0D;
{pagetree:root=Integration Documentation|searchBox=true}&#x0D;
[Index|http://confluence.atlassian.com/labels/listlabels-alphaview.action?key=ATLAS]&#x0D;
[Downloads (PDF, HTML &amp; XML formats)|ALLDOC:Integration Documentation Directory#downloads]&#x0D;
</navigation>
  <treeEnabled>false</treeEnabled>
</com.atlassian.confluence.plugins.doctheme.Settings>]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707129</id>
<property name="position">3</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674149</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453499</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453500</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453501</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453502</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453503</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453504</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453505</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204768007</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204768416</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204770282</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206210930</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685308</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206798924</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206799101</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206799431</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209454413</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206803298</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206803611</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206815209</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207471168</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206817999</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206818670</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207361384</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207471728</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207474888</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206825556</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206828818</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207472210</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207380790</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207467337</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207382578</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208052560</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207383977</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207385600</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207390660</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209456488</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209456509</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207477045</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207478447</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208055832</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207481922</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207482782</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208058889</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208059176</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207987180</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208953765</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207995537</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207995597</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061052</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061329</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208003339</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208470772</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208008144</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207357582</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208049167</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208471456</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208479146</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208479560</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208929083</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208931604</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208940702</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208942089</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208942112</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208944219</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208945530</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208951385</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210131294</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209465349</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209471091</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209471749</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209472783</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136229</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209552567</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209554778</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209556759</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209558646</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136927</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209565792</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209568165</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570094</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570168</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570887</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209571633</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209572813</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209574038</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209576853</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209577606</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209578043</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209578690</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209578788</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209581931</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210109747</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210111112</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210113708</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210116001</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660883</id>
</element>
</collection>
<property name="version">51</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.399</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394581</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294231</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294243</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294255</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294261</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294283</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294332</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294369</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391584</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294660</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294704</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294717</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294733</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294738</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391619</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851554</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851569</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392188</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392214</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392233</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">204047972</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851959</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851966</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271737</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707390</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707434</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707441</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707806</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707834</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707835</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392826</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392858</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852660</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489785</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393692</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585495</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708977</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">204049417</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517549</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709922</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709980</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474200</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707133</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707200</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215485112</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351575</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351580</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065932</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912744</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668527</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810446</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719908</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719899</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375374</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810449</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618633</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618635</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618637</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295342</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295343</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810448</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295341</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719912</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719871</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810447</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295344</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233963564</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233963569</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">233963571</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241008958</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241008961</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241009051</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707140</id>
<property name="position">5</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674160</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579829</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579830</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579831</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579832</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579833</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579834</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579835</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579836</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579837</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579838</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579839</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579840</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579841</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579842</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579843</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579844</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579845</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579846</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579847</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579848</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579849</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579850</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579851</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579852</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579853</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579854</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579855</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579856</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">246579857</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204772396</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685958</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206808130</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206808200</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206810358</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207359131</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207359356</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206823986</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206824359</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206825116</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206826390</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206829325</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207379309</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207379566</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207389472</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207455171</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207477734</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207478537</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207983582</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207984627</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208060125</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061021</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208000445</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208474684</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208941647</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209556670</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209557349</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209561356</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210137797</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209572853</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660880</id>
</element>
</collection>
<property name="version">104</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:32.382</property>
<property name="versionComment"><![CDATA[Hg version compatibility]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">236586395</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">236586401</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394588</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391586</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294663</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294679</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294692</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294693</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294730</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294732</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294775</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294802</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294810</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294812</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294814</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294820</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294825</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294827</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294830</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294887</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294905</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391633</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201850998</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851001</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851015</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851021</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851062</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851063</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851085</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851086</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851106</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851115</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851127</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851147</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851185</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851190</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851237</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851252</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238617557</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238617579</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">246481100</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">246481104</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240190937</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">246481107</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851443</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851451</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851499</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851509</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851589</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851594</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851602</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851616</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851641</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392194</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392218</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392235</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392290</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392358</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851930</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851974</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392582</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707392</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707448</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707457</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852225</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392599</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392626</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392636</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392641</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392645</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707809</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707821</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707841</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392862</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271809</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852663</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">218271830</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852721</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473483</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393683</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393707</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473643</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393854</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708980</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585506</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393878</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473854</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517552</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709935</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709936</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709948</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709951</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394309</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707144</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707202</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215485122</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351604</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351606</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065951</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912756</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">236586348</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">236586351</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295352</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295354</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014992</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522295</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522293</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810455</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522294</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810456</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">208306187</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295353</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295351</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014947</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014748</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014802</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014792</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697107</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697439</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697443</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707143</id>
<property name="position">6</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 5 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674163</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454237</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454238</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454239</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454240</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454241</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454242</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454243</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454244</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454245</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454246</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204767294</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206537301</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206538346</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206801286</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207358956</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207359048</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208064226</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206821251</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207361731</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207465616</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208054651</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208473811</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208057475</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209457942</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207985507</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207996645</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061162</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208954246</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208005223</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209458816</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208063176</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208479325</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208479374</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208936012</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208943139</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208950591</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209558110</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209567074</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570862</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210115257</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210125053</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210125106</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210126189</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660879</id>
</element>
</collection>
<property name="version">76</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.454</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">236586397</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394590</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208142410</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">208142449</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294664</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294756</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391636</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201850999</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851064</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851066</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851117</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851118</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851119</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851122</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851243</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851244</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851245</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851246</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851248</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851251</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851254</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851258</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238617552</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851511</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392196</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392236</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852006</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852009</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707394</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707449</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707437</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852217</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707466</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707462</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852242</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852249</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852293</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852297</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852300</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852303</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852319</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852322</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392667</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392668</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392672</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852354</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392673</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852353</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852355</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707811</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707822</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707844</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392866</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852699</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852715</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852719</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708981</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585508</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473856</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517556</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">204047348</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709947</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474204</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707145</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707203</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">215485123</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351614</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351620</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065953</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065957</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228622668</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912760</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668551</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616648</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616680</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522297</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522298</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375375</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522302</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522304</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522303</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015038</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810459</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810458</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810457</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295357</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295355</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295356</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015033</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015034</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027097</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897034</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897035</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697454</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697505</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697513</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697519</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004495</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[JIRA Portlets on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037120</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665554</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665555</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665556</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665557</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665558</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665559</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665560</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665561</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665562</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206830648</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207367002</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208065731</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207989539</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207993424</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208002070</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210127380</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208942411</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209463608</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210125662</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:09:37.551</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.130</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005066</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528170</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">233570334</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[com.atlassian.confluence.extra.flyingpdf.config.header]]></property>
<property name="value"><![CDATA[<string>Atlassian Integration Guide</string>]]></property>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">233570333</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[com.atlassian.confluence.extra.flyingpdf.config.titlepage]]></property>
<property name="value"><![CDATA[<string>&lt;div class=&quot;fsTitlePage&quot; style=&quot;margin-left:auto;margin-top:3in;margin-right:auto;&quot;&gt;&#x0D;
     &lt;img src=&quot;/download/attachments/203392143/atlassian.png&quot; /&gt;&#x0D;
&lt;/div&gt;</string>]]></property>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">233570335</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[com.atlassian.confluence.extra.flyingpdf.config.footer]]></property>
<property name="value"><![CDATA[<string>&lt;span id=&quot;pageNum&quot;/&gt;&#x0D;
</string>]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391407</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons Partial JIRA Setup]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424150</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 19:19:19.447</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:23:09.725</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391409</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351558</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065923</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">233149079</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668518</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391389</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424134</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244453254</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:16:27.486</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392178</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392351</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392573</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392823</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351556</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065921</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065930</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668515</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295337</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522135</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391508</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424241</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:03:53.349</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:18:05.871</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351557</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810445</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295339</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522147</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391502</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Dragons Create JIRA Project]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424236</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:00:44.967</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-21 22:46:26.959</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392166</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392824</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207489762</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351464</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912720</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522146</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004417</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[JIRA Issues on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037044</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665534</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665535</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665536</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665537</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665538</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665539</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665540</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665541</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205295785</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207472561</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207381139</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208053221</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207458941</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208058423</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208478278</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208959022</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210131525</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210116251</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 22:50:36.882</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.643</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004465</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005065</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528151</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528163</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">170001525</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Plugin Development]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">170034198</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">224567904</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">224567905</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">224567906</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-10-30 00:11:16.567</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-09-26 22:49:23.247</property>
<property name="versionComment"><![CDATA[Removed out-of-date diagram and fixed broken macros]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">170001533</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">170001530</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">224397306</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">170721304</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">170262616</id>
</element>
</collection>
</object>
<object class="ConfluenceBandanaRecord" package="com.atlassian.confluence.setup.bandana">
<id name="id">213811288</id>
<property name="context"><![CDATA[ATLAS]]></property>
<property name="key"><![CDATA[snippet.errors]]></property>
<property name="value"><![CDATA[<null/>]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004380</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[User and Group Management across Directories and Web Applications]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037008</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665766</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665767</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665768</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665769</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166665770</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209463701</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 21:59:04.144</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:29.601</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004456</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528237</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005070</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[JIRA Issues in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037642</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959305</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959306</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959307</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959308</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208936055</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:27:12.288</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:44:46.190</property>
<property name="versionComment"><![CDATA[Rebrand the IDE connectors]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">168004097</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852607</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005072</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528212</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005068</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Bamboo Builds in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037640</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959301</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959302</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959303</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959304</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:23:01.209</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:43:35.464</property>
<property name="versionComment"><![CDATA[Rebrand the IDE connectors]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">168004089</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852605</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528191</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005074</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Crucible Reviews in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037646</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959297</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959298</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959299</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959300</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:35:57.249</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:42:21.942</property>
<property name="versionComment"><![CDATA[Rebrand the IDE connectors]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">168004093</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">167183601</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852603</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528202</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005062</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Bamboo Builds in Eclipse]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037634</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959309</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959310</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959311</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">201959312</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204770480</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204770526</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205294517</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206211591</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206799107</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206803666</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206818656</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206821087</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206823374</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208475769</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207370179</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207372873</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207467800</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207384265</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207389134</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207455527</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207457154</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208066471</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208056576</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207985277</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207999345</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208954335</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208005590</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208006322</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208011003</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208471211</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208047839</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208471419</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208480154</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208935521</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210130434</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208945473</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210130639</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208947505</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209465426</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209554241</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209554424</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209558321</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209560695</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210116503</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210117718</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210119463</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:12:39.000</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:45:48.045</property>
<property name="versionComment"><![CDATA[Rebrand the IDE connectors]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">193790828</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168004087</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166527223</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201852609</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166005064</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227413907</id>
<property name="position">7</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446483</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454402</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454403</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454404</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454405</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454406</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454407</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454408</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">228261899</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.865</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414262</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414378</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414380</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414387</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414388</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414392</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414391</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065533</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065534</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065536</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351622</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351632</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065887</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065902</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065954</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065977</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227416096</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227416100</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227416179</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">229181012</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227414069</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912763</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668555</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616685</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616686</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616690</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616695</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">238616700</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="attachments" class="java.util.Collection"><element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774440</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774441</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774442</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774443</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774561</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774605</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774470</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774560</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774559</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774607</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774603</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774604</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774606</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774468</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235896956</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774460</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774459</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774558</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774469</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897036</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">235897037</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697544</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697545</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241697587</id>
</element>
<element class="Attachment" package="com.atlassian.confluence.pages"><id name="id">241698165</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">165121103</id>
<property name="position">0</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<collection name="children" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</element>
</collection>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Guide to Installing an Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">165088160</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">203511564</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">203511565</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206827447</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207386360</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207390504</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209462156</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136157</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660875</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-05 18:33:16.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:07:01.743</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394539</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166004746</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474216</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394406</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">213450772</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">241992187</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218279135</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_MultipleAppsInSingleTomcatSupportFAQ]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218310746</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-06-24 22:48:41.317</property>
<property name="lastModifierName"><![CDATA[pkamal]]></property>
<property name="lastModificationDate">2010-07-15 01:09:37.718</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">221446731</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">226791031</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">226888983</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-22 00:11:01.466</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:08:43.268</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351531</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668573</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BlogPost" package="com.atlassian.confluence.pages">
<id name="id">166004748</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Welcome to the Atlassian Integration Guide]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037345</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166108256</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166108257</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166108258</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">166108259</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 19:49:49.093</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:53:32.153</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="contentStatus"><![CDATA[deleted]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707096</id>
<property name="position">0</property>
<property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<collection name="children" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</element>
</collection>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674117</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454963</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454964</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454965</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454966</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454967</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454968</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454969</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454970</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454971</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454972</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454973</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454974</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454975</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454976</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454977</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454978</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454979</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454980</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454981</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454982</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454983</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454984</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454985</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454986</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454987</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454988</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454989</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454990</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454991</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">244454992</id>
</element>
</collection>
<collection name="referralLinks" class="java.util.Collection"><element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204767655</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204768381</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204774031</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204771605</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204771715</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205291936</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205292490</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205293006</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205293072</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205293159</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205295677</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205296704</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205296794</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205684800</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205684929</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685234</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685486</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685852</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205687099</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205688097</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206211427</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206808513</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206212711</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206212931</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206214110</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206536745</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207470348</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206800355</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206800558</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206800826</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206800782</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206800965</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206801120</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206809904</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206801437</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206802235</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206802376</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206802680</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206803556</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206803723</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206803746</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206804390</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206804858</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206810634</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206810729</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206807030</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206811998</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206812007</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206812014</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206811310</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206812065</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206812004</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206813624</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206816446</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206817481</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206818456</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206820187</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207364928</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207362023</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206823293</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206823972</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208064592</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207362343</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206824804</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206825072</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207462047</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206827660</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206827762</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206828098</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206828774</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206828811</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206829401</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206829560</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206829872</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206830175</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206831134</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206801515</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207366147</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207464368</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207474932</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206811991</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207465009</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207370544</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207370883</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208051558</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207372624</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207374220</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207375284</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207376347</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207376219</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207378158</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208052141</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207378503</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207378938</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207466886</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207379356</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207379494</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207379609</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207380274</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207380479</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207380562</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207467303</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207381406</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207381437</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207383268</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207383334</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207467910</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209471482</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207387232</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207468357</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685708</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207468547</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207389113</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207389304</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207389348</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207468623</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207391034</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207455503</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207374440</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207455586</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208053636</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207456115</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207381617</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207480151</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207457122</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208065729</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208053867</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207357600</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209456361</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207476505</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207477259</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208054961</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479333</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479578</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206826798</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209456944</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479782</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479976</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207480059</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207480101</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207480129</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207480275</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207481327</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207481849</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207482499</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207482652</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207483655</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207483880</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207483892</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208056749</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208056917</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205686518</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207485502</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207486401</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207978522</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207979773</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207980290</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207980835</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207982048</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206800615</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207985340</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206816219</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479154</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207988419</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207988556</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206800564</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207989796</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207992389</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207386052</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207993490</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208470094</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207994506</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208061183</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208000129</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208001447</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208470569</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208003429</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209460646</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208470934</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208008474</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208009747</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208010589</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208000830</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208044525</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208955433</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208044837</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206830571</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205294417</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208045720</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210127356</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206801202</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208047289</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208047368</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208048078</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208048802</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206824661</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209460719</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208050211</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208956074</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208471485</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208956400</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205685511</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208956583</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208477237</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208956886</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208479951</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208929238</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208930090</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210128661</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208929848</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210128725</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208054280</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208930964</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208933660</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208933712</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207456624</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208936929</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208940836</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208940943</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207380989</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204768269</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208945551</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209453178</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206824925</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208947048</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208947258</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207357909</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208948074</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207456286</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208948397</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479441</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208011104</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207358537</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208950023</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208950894</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210131533</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208942402</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210129813</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210132541</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209463007</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210132968</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209464434</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210133439</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210133518</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207985334</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209467340</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209467772</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209467829</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208951697</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207366244</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209468426</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204767716</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209471455</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209471553</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209471636</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206806994</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209472640</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209473144</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209473166</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209473272</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136066</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209473708</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">208954984</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209551844</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209552041</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136205</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209553895</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209555081</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209556717</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136770</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209558295</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210136899</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209560594</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209562004</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207481428</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206821298</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209562547</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209562719</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210137322</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209562865</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210137353</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210137382</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209563665</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209563735</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209564070</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204771585</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209564147</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209564160</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210137554</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209564137</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204767501</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204767834</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209565730</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209566862</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138119</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138180</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209569846</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138217</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570463</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209571089</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138382</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138436</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209570816</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207479459</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138572</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209573257</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206538380</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138661</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209573603</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138710</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138720</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209575536</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209575663</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209575909</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210138902</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209576519</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209576939</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206801568</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209580233</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209580240</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209580336</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209580785</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207363268</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205294390</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209580296</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210139543</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209582872</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209583106</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209584066</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209584101</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210109492</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210109591</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210140118</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210111547</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207359835</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210112604</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">205687367</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210114086</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207983270</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207480207</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210115579</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210117014</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204770125</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210117494</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">209558528</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210120881</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206802835</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210121101</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204773377</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210121563</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204771601</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206826308</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">207469836</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210124741</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">204768190</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">210125176</id>
</element>
<element class="ReferralLink" package="com.atlassian.confluence.links"><id name="id">206824936</id>
</element>
</collection>
<collection name="contentPermissionSets" class="java.util.Collection"><element class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660876</id>
</element>
</collection>
<property name="version">71</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.253</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">203394575</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211060993</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211060996</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211060997</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912476</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391588</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294656</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391601</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391603</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203398694</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201294900</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391668</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203391677</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201850991</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851081</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211061307</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211061308</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211061310</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851213</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851493</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392313</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392369</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851950</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851977</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851982</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">201851994</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707363</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707506</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707542</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392639</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707789</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707797</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707804</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203392843</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708134</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200708176</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393081</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393089</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393092</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393684</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203393705</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">209585528</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473734</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473737</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473741</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202473742</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213517542</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200709954</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474211</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">202474218</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707101</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707107</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707164</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707187</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707189</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707192</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707194</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">200707215</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351576</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351635</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351665</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065959</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">228065976</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240192327</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668503</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">240912736</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">232556791</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">232556818</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">241567609</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">241567622</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">209289284</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">204245151</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">204242966</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">213844694</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">203622048</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">203622144</id>
</element>
</collection>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211649471</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211714932</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">211752976</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">211752977</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-01-05 21:06:22.573</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-05 21:06:22.573</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">226791000</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_DragonsVersionNumber-GH]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">226888962</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-21 22:44:42.946</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:07:46.187</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">244351528</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">235668572</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">165118097</id>
<property name="position"/><property name="parent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<collection name="ancestors" class="java.util.List"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</element>
</collection>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">165085310</id>
</element>
</collection>
<collection name="outgoingLinks" class="java.util.Collection"><element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951010</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951011</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951012</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951013</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951014</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951015</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951016</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951017</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951018</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951019</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951020</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951021</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951022</id>
</element>
<element class="OutgoingLink" package="com.atlassian.confluence.links"><id name="id">245951023</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.578</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="Page" package="com.atlassian.confluence.pages"><id name="id">200710275</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211060897</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">193790768</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">245827458</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168003922</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">168003980</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">245827508</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203395360</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">203395407</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">166528130</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213058091</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">213058111</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">210763811</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">211651746</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">205783744</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">221447424</id>
</element>
<element class="Page" package="com.atlassian.confluence.pages"><id name="id">229179710</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454966</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065935</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098624</id>
</element>
</collection>
<property name="version">94</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:15:42.405</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454965</id>
<property name="destinationPageTitle"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454964</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/starter/youslayedthedragon.jsp]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065933</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098622</id>
</element>
</collection>
<property name="version">93</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-23 00:42:57.133</property>
<property name="versionComment"><![CDATA[Reverted from v. 91]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454963</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685511</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=atlassian+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 21:42:15.107</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 01:50:15.162</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065932</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098621</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 20:48:02.784</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454970</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/fisheye/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065931</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098620</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-11 15:52:35.568</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454969</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065930</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098619</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:02:33.260</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454968</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/greenhopper/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454967</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205291936</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=QMZ&q=atlassian+dragon&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 10:27:15.162</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 10:27:15.162</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065944</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098633</id>
</element>
</collection>
<property name="version">97</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:21:44.353</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065943</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098632</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:11:11.984</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206803746</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cn/search?sourceid=navclient&aq=hts&oq=&hl=zh-CN&ie=UTF-8&rlz=1T4CULB_zh-CNCN352CN352&q=File+not+full%2cplease+re+install+hide+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 05:07:15.217</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 05:07:15.217</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065942</id>
<property name="position">9</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098631</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:51:16.471</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065939</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098628</id>
</element>
</collection>
<property name="version">96</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:21:04.630</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065938</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098627</id>
</element>
</collection>
<property name="version">95</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:17:25.759</property>
<property name="versionComment"><![CDATA[Reverted from v. 93]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">229179710</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">229212450</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-07-19 00:28:03.533</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454981</id>
<property name="destinationPageTitle"><![CDATA[//blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065920</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098609</id>
</element>
</collection>
<property name="version">75</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-08-02 22:42:40.737</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454982</id>
<property name="destinationPageTitle"><![CDATA[//answers.atlassian.com/tags/integration/]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454979</id>
<property name="destinationPageTitle"><![CDATA[//www.7-zip.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454980</id>
<property name="destinationPageTitle"><![CDATA[//www.winzip.com/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">226791403</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">226889316</id>
</element>
</collection>
<property name="version">91</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 23:04:58.402</property>
<property name="versionComment"><![CDATA[https://studio.atlassian.com/browse/INTDOCS-83]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454985</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209467772</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=2&ved=0CA0QFjAB&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=confluence+dragonslayer&ei=qnsZS5HTJYKMMumrxe8C&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 15:15:15.094</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 15:15:15.094</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">226791404</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">226889317</id>
</element>
</collection>
<property name="version">92</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-23 00:42:21.009</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454986</id>
<property name="destinationPageTitle"><![CDATA[//maven.apache.org/download.html]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454983</id>
<property name="destinationPageTitle"><![CDATA[//forums.atlassian.com/forum.jspa?forumID=126]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065914</id>
<property name="position"/><property name="title"><![CDATA[_Dragons PostgreSQL]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098603</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:40:12.574</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 18:53:30.419</property>
<property name="versionComment"><![CDATA[Added note about IE renaming JAR files]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454984</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206808130</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=fisheye+dashboard+configuration&rls=com.microsoft:*&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 10:43:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 10:43:15.128</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454973</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[GADGETS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207384265</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.br/search?hl=pt-BR&ei=SOEDS82-FcWeuAeN0oimCA&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=bamboo+eclipse+plugin&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 05:59:15.036</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 05:59:15.036</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454974</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/starter/youslayedthedragon.jsp]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204767764</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.lk/search?q=Integration+points+of+SVN+with+Jira&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 21:27:15.067</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 21:27:15.067</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454971</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crucible/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454972</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685486</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=dragon+slayer+atlassian&ei=jTH6Sq24JMj5nAeK8tCHDQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 21:38:15.061</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 21:38:15.061</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065923</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Partial JIRA Setup]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098612</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 19:19:19.447</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 19:20:30.524</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391407</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454977</id>
<property name="destinationPageTitle"><![CDATA[//support.atlassian.com/secure/Dashboard.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454978</id>
<property name="destinationPageTitle"><![CDATA[//www.gnu.org/software/tar/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065921</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098610</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:30:54.640</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454975</id>
<property name="destinationPageTitle"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206823293</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+quest&rls=com.microsoft:en-us&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 15:55:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 15:55:15.056</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454976</id>
<property name="destinationPageTitle"><![CDATA[//support.atlassian.com/secure/Dashboard.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294231</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201326969</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 00:59:49.368</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065902</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098592</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 20:20:01.623</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487463</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520186</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-19 22:34:26.027</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487457</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520181</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-19 22:32:41.205</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209463007</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://delicious.com/wahrheit]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 07:09:15.151</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 07:09:15.151</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207982048</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 08:45:15.107</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 08:45:15.107</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065912</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098601</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:38:13.592</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:30:23.995</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487456</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520180</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-19 22:21:43.710</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136157</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.ph/search?q=atlassian+suite&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 19:04:15.150</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 19:04:15.150</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685475</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.kr/search?complete=1&hl=ko&q=installl+bamboo+2.4.0&lr=&aq=f]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 21:35:15.051</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 21:39:15.043</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454947</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454948</id>
<property name="destinationPageTitle"><![CDATA[Switching Databases]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454949</id>
<property name="destinationPageTitle"><![CDATA[JIRA 4.3.3 Upgrade Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065887</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098578</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 00:18:28.530</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454950</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454951</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166003912</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166036576</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-31 22:20:09.799</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454952</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=JIRA is hot, the dragon is not! I've completed stage 1 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454953</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 2 - Install GreenHopper into JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454954</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294208</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201326946</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 02:49:03.664</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209576519</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cl/search?q=atlassian+dragon+lair&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-CL:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 20:17:15.165</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 20:17:15.165</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454946</id>
<property name="destinationPageTitle"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:57.091</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:57.091</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208934796</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://plantecnologico.gpm.int/pt/wiki/atlassian]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 07:04:15.063</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 02:16:15.070</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209467829</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=confluence+what+else+to+do+to+speed+up+loading&sourceid=navclient-ff&rlz=1B5GGGL_enUS306US306&ie=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 15:22:15.063</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 15:22:15.063</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204767716</id>
<property name="viewCount">11</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon&product=&resource=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 21:15:15.026</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 08:32:15.055</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207999345</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://wwwin-eclipse.cisco.com/vtg/catalog.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 16:10:15.033</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 16:10:15.033</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207471168</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.id/search?q=installing+jira+greenhopper+plugins&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 04:02:15.208</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 04:02:15.208</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487446</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520170</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-19 19:07:23.966</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209471636</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?aq=f&sourceid=chrome&ie=UTF-8&q=atlassian+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 20:07:15.064</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 20:07:15.064</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206803666</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?q=bamboo+eclipse+plugin&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 05:00:15.083</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 05:00:15.083</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479782</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragonslayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 00:25:15.055</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 00:31:15.077</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136229</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=iceweasel-a&rls=org.debian:en-US:unofficial&ei=n_QiS4DAMZaH_AbBsdm3Cg&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=atlassian+install+greenhopper&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 19:41:15.061</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 19:41:15.061</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207357692</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/2009/10/integrating-multiple-atlassian-products-follow-our-guide-and.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 04:45:15.120</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 04:45:15.120</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528151</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issue Lists on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560794</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 22:50:36.882</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:16:31.296</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208054961</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=safari&rls=en&q=dragon+slayer+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 23:56:15.060</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 23:56:15.060</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207995537</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=jira+greenhopper+plugin+evaluation+time&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 09:53:15.104</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 09:53:15.104</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206803723</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.at/search?hl=de&client=firefox-a&rls=org.mozilla%3Ade%3Aofficial&hs=WID&q=dragonslayer+atlassian&btnG=Suche&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 05:05:15.149</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 05:05:15.149</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454992</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.819</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.819</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454991</id>
<property name="destinationPageTitle"><![CDATA[//www.auscert.org.au/render.html?it=2260]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.819</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.819</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">204047348</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">204080042</id>
</element>
</collection>
<property name="version">59</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:58:29.535</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454988</id>
<property name="destinationPageTitle"><![CDATA[Setting up your Plugin Development Environment]]></property>
<property name="destinationSpaceKey"><![CDATA[DEVNET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210109747</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=jira+sprints+within+version&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 12:23:15.369</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 12:23:15.369</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454987</id>
<property name="destinationPageTitle"><![CDATA[Configuring a new Executable]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206829401</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/news/atlassian]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 15:41:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 15:41:15.070</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454990</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454989</id>
<property name="destinationPageTitle"><![CDATA[Maven Cannot Find Java Mail, Java Activation or JTA]]></property>
<property name="destinationSpaceKey"><![CDATA[DEVNET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 01:07:50.818</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 01:07:50.818</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206799431</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=configure+agile+in+jira]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 18:16:15.107</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 18:16:15.107</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208054975</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ru/search?hl=ru&rlz=1C1GGLS_ruRU353RU353&newwindow=1&q=%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B0+confluence+keygen.class&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 00:00:15.170</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 00:00:15.170</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528130</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560775</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-31 18:08:11.719</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208947505</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fi/search?q=bamboo+eclipse+plugin&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 07:26:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 07:26:15.128</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136205</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1G1GGLQ_ENUS275&q=here+be+dragons&aq=f&oq=&aqi=g4g-c1g1g-c3g1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 19:27:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 19:27:15.031</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204767739</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+here+there+be+dragons&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 21:21:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 21:21:15.028</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528170</id>
<property name="position"/><property name="title"><![CDATA[JIRA Portlets on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560811</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:09:37.551</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:16:57.587</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204767655</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=navclient&ie=UTF-8&rlz=1T4ADRA_enUS353&q=attlassian+dragon+quest]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 21:01:15.081</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 21:01:15.081</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208930090</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.nz/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-GB%3Aofficial&hs=4FI&q=atlassian+dragons&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 19:43:15.032</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 19:43:15.032</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668573</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701137</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-22 00:11:01.466</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-22 00:11:01.466</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791031</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">200868805</id>
<property name="fileName"><![CDATA[JIRADashboardOnLogin.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:01:48.944</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:01:48.944</property>
<property name="fileSize">46445</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207357600</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/2009/10/integrating-multiple-atlassian-products-follow-our-guide-and.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 04:38:15.073</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 09:33:15.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207458050</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=studio+bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 03:20:15.215</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 03:57:15.195</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487362</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520092</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-19 18:56:29.561</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668572</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-GH]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701136</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-21 22:44:42.946</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-21 22:44:42.946</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791000</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207357594</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/2009/10/integrating-multiple-atlassian-products-follow-our-guide-and.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 04:37:15.095</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 23:00:15.075</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207361384</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.hr/search?hl=hr&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=qij&q=jira+project+week+sprint&btnG=Tra%C5%BEi&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 09:56:15.035</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 09:56:15.035</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207991767</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=installing+bamboo+and+jira&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 04:51:15.109</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 04:51:15.109</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">165088160</id>
<property name="body"><![CDATA[We have put together a guide (see below) to integrating a suite of Atlassian applications. The guide consists of detailed step-by-step instructions for setting up a specific configuration. There are also links to the installation and configuration guides for each component.

Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult. So we invite you to join the *Atlassian Dragon Quest*.

* *Starting from scratch?* If you do not have any Atlassian applications installed, please start at [Here be Dragons].
* *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294297</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327033</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 22:42:05.391</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206803611</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?sourceid=chrome&ie=UTF-8&q=jira+greenhopper+setup]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 04:55:15.093</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 04:55:15.093</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528163</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issues on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560805</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 22:50:36.882</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:25:13.714</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207357582</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/2009/10/integrating-multiple-atlassian-products-follow-our-guide-and.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 04:36:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 00:38:15.100</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424236</id>
<property name="body"><![CDATA[In this step you will create some data in JIRA, including a project and an issue, for use in the subsequent stages of this integration procedure. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top right of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the gadget directory.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow !DragIcon.png! (or a hand). Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424241</id>
<property name="body"><![CDATA[(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 3 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391508</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208956074</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+gragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 00:27:15.099</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 00:27:15.099</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207462389</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&source=hp&q=bamboo+jira+integration&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 09:19:15.187</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 09:19:15.187</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528202</id>
<property name="position"/><property name="title"><![CDATA[Crucible Reviews in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560840</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:35:57.249</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:35:57.249</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208066471</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.at/search?q=atlassian+eclipse+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 14:42:15.069</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 14:42:15.069</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209471749</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1C1GGLS_enUS345US345&q=greenhopper+system+requirements&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 21:44:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 21:44:15.021</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206823374</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=bamboo+eclipse+integration&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 16:06:15.143</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 16:06:15.143</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528212</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issues in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560849</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:27:12.288</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:28:33.746</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207995597</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=install+jira+and+greenhopper&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 09:56:15.471</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 09:56:15.471</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205296367</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&source=hp&q=setup+jira+home+directory&btnG=Google+Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 17:06:15.087</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 17:06:15.087</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528191</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560830</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:23:01.209</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:23:01.209</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294332</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327067</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 21:22:31.348</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208956583</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=slay+the+dragon+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 01:51:15.200</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 01:51:15.200</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204771967</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=37751&tstart=195]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 05:54:15.069</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 05:54:15.069</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">168198295</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">28508168</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="user"><![CDATA[yjy@goldpitcher.com]]></property>
<property name="creationDate">2008-09-12 06:31:37.801</property>
<property name="lastModificationDate">2008-09-12 06:31:37.801</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206810394</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=bamboo+url&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 14:13:15.112</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 14:13:15.112</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209471728</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=jira+bamboo+integration&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 21:28:15.023</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 05:11:15.021</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209576281</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/SarahMaddox]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 19:30:15.294</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 19:30:15.294</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208046330</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.ask.com/blogsearch?q=ask+toolbar+download&search=&qsrc=178&o=0&l=dir]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 01:10:15.148</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 01:10:15.148</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207375143</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.linkedin.com/home]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 10:50:15.254</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 08:57:15.176</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528237</id>
<property name="position"/><property name="title"><![CDATA[User and Group Management across Directories and Web Applications]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560871</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 21:59:04.144</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 01:26:46.891</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668515</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701084</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:10:10.301</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207483880</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=here+be+dragons+atlassian]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 13:48:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 13:48:15.029</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668518</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Partial JIRA Setup]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701087</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 19:19:19.447</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-01 17:24:50.886</property>
<property name="versionComment"><![CDATA[Added missing step]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391407</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294255</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201326992</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 19:18:54.562</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166528235</id>
<property name="position"/><property name="title"><![CDATA[Single Sign-On (SSO) across Web Applications]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166560869</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 21:28:52.293</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 01:26:17.297</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206829560</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=Atlassian+Dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 16:41:15.024</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 16:41:15.024</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454905</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.285</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.285</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454906</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454903</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.285</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.285</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206803556</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://co109w.col109.mail.live.com/mail/InboxLight.aspx?n=1304108001]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 04:51:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 04:51:15.056</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210109591</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+here+be+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 12:05:15.170</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 12:05:15.170</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454904</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/starter/youslayedthedragon.jsp]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.285</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.285</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294261</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201326998</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 19:54:53.978</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668510</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701079</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-10 21:46:14.003</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-10 21:46:14.003</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">226787473</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294263</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327000</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 19:40:17.923</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454914</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668529</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701098</id>
</element>
</collection>
<property name="version">98</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:26:44.313</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454913</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 6 - Get JIRA and Crucible Talking]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454912</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 5 - Get JIRA and FishEye Talking]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454911</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 4 - Install FishEye and Crucible]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454910</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 3 - Install Confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454909</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 2 - Install GreenHopper into JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454908</id>
<property name="destinationPageTitle"><![CDATA[Dragons with JIRA Stage 1 - Set Up Environment and JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454907</id>
<property name="destinationPageTitle"><![CDATA[//support.atlassian.com/secure/Dashboard.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206810358</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=960&q=how+to+connect+to+fisheye+3+svn&btnG=Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 14:10:15.079</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 14:10:15.079</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065979</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098668</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:39:36.369</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294243</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201326981</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 18:58:26.286</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668524</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701093</id>
</element>
</collection>
<property name="version">76</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:00:48.079</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959311</id>
<property name="destinationPageTitle"><![CDATA[//www.eclipse.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:45:48.269</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:45:48.269</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959312</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:45:48.269</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:45:48.269</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065977</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098666</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:34:19.689</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959309</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:45:48.269</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:45:48.269</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959310</id>
<property name="destinationPageTitle"><![CDATA[//www.eclipse.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:45:48.269</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:45:48.269</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209462962</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=atlassian+bamboo+jdk+1.6&sourceid=navclient-ff&rlz=1B3GGGL_enUS331US331&ie=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 07:05:15.090</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 07:05:15.090</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454916</id>
<property name="destinationPageTitle"><![CDATA[After Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959307</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:44:46.393</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:44:46.393</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668527</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701096</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:12:28.587</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454915</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:59:56.286</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:59:56.286</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294248</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201326986</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 02:45:17.545</property>
<property name="versionComment"><![CDATA[Minor review amendment.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959308</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:44:46.393</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:44:46.393</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065969</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098658</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-14 18:25:45.815</property>
<property name="versionComment"><![CDATA[Fixed grammar]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294283</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327019</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 20:00:18.669</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065970</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098659</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:39:06.092</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065973</id>
<property name="position">9</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098662</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:26:44.265</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668551</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701118</id>
</element>
</collection>
<property name="version">68</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-13 17:13:03.228</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065974</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098663</id>
</element>
</collection>
<property name="version">74</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:36:14.452</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668552</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701119</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:38.123</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-28 21:45:14.970</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411670</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065975</id>
<property name="position">9</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098664</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:48:10.676</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207378938</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=confluence+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 17:02:15.120</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 17:02:15.120</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065976</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098665</id>
</element>
</collection>
<property name="version">59</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:36:14.368</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294292</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327028</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 21:59:00.179</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294290</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327026</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 20:01:12.723</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065964</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098653</id>
</element>
</collection>
<property name="version">73</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 23:07:51.154</property>
<property name="versionComment"><![CDATA[https://studio.atlassian.com/browse/INTDOCS-83]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294293</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327029</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 22:41:12.615</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208003339</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=jira+install+greenhopper&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 03:34:15.151</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 03:34:15.151</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454880</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:13.571</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:13.571</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065954</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098643</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 20:51:57.669</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454879</id>
<property name="destinationPageTitle"><![CDATA[After Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:13.571</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:13.571</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065953</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098642</id>
</element>
</collection>
<property name="version">65</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:58:54.051</property>
<property name="versionComment"><![CDATA[Updated for JIRA 4.1 and FishEye 2.2.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294265</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327002</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-14 18:32:00.274</property>
<property name="versionComment"><![CDATA[Added clarifications for database user account authentication details.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065956</id>
<property name="position"/><property name="title"><![CDATA[Running Bamboo in a Console Window]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098645</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:22:19.918</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:50:05.768</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454876</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:13.571</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:13.571</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207483892</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3A*%3AIE-SearchBox&rlz=1I7TSHB_en&q=hear+be+dragons+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 13:52:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 13:52:15.021</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065957</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098646</id>
</element>
</collection>
<property name="version">66</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:29:38.051</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454878</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/starter/youslayedthedragon.jsp]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:13.571</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:13.571</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454877</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=Victory! Dragons hold no fear for me. %40atlassian where's my T-shirt%3F %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:13.571</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:13.571</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065959</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098648</id>
</element>
</collection>
<property name="version">58</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:10:46.303</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668556</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701123</id>
</element>
</collection>
<property name="version">75</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:49:02.035</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454888</id>
<property name="destinationPageTitle"><![CDATA[Managing Users]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:56:49.155</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:56:49.155</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454887</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:56:49.155</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:56:49.155</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668555</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701122</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-01-04 21:45:07.947</property>
<property name="versionComment"><![CDATA[Removed incorrect steps.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668554</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701121</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:48.809</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-28 21:45:20.262</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411672</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668553</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701120</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 02:34:09.832</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:34:09.832</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414394</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208055100</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.exalead.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 00:32:15.092</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 00:32:15.092</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207471004</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=nl&rls=com.microsoft%3Anl%3AIE-SearchBox&rlz=1I7GGLR_nl&q=how+to+edit+assigned+to+me+jira+dashboard&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 03:48:15.258</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 03:48:15.258</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206823465</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=bamboo+fisheye+integration+configure+bamboo&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 16:17:15.030</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 16:17:15.030</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454886</id>
<property name="destinationPageTitle"><![CDATA[Managing Users]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:56:49.155</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:56:49.155</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454885</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:56:49.155</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:56:49.155</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522053</id>
<property name="fileName"><![CDATA[DragonBaby-80px.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:43:20.192</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 00:43:20.192</property>
<property name="fileSize">14274</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668557</id>
<property name="position">9</property>
<property name="title"><![CDATA[Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701124</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:57:51.965</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065951</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098640</id>
</element>
</collection>
<property name="version">90</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 23:07:12.611</property>
<property name="versionComment"><![CDATA[https://studio.atlassian.com/browse/INTDOCS-83]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227411690</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227444367</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:38.123</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-28 21:14:38.123</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411670</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204767501</id>
<property name="viewCount">7</property>
<property name="url"><![CDATA[http://tr.im/AOZ9]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 20:31:15.050</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 18:25:15.098</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208502923</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208535690</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-26 16:19:22.992</property>
<property name="versionComment"><![CDATA[Updated after Crucible/Clover PM review]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227411691</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227444368</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:48.809</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-28 21:14:48.809</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411672</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207370883</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.netvibes.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 05:19:15.308</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 05:19:15.308</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391079</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423842</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 01:24:33.776</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210131533</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=atlassian%2C+dragons&src=IE-SearchBox&FORM=IE8SRC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 09:12:15.316</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 09:12:15.316</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391086</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423849</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 01:45:41.632</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479578</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&source=hp&q=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&btnG=Google+Search&meta=&rlz=1R2GGLL_en&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 22:17:15.039</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 22:17:15.039</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210114357</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.ke/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-US%3Aofficial&hs=Cjb&q=banboo+gadgets&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 23:08:15.096</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 23:08:15.096</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810242</id>
<property name="fileName"><![CDATA[ConfluenceDemoSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-03-28 20:06:56.059</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-28 20:06:56.059</property>
<property name="fileSize">287898</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014741</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206799107</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=eclipse+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 17:26:15.126</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 17:26:15.126</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685708</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 22:21:15.074</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 20:39:15.087</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">235668503</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">235701072</id>
</element>
</collection>
<property name="version">62</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-02-15 23:16:12.830</property>
<property name="versionComment"><![CDATA[Added a link to the forum too, and remove the mention that we're monitoring it]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207370857</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.netvibes.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 05:17:15.186</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 05:17:15.186</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209554778</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ru/search?hl=ru&newwindow=1&q=change+license+GreenHopper&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 04:25:15.069</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 04:25:15.069</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206799101</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-US%3Aofficial&hs=O1M&q=install+the+plugins+in+jira+4&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 17:25:15.086</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 17:25:15.086</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424134</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in a previous step.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.4/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the JIRA user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E jirauser
# Create the JIRA database:
/opt/PostgreSQL/8.4/bin/createdb --owner jirauser --encoding utf8 jira
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522135</id>
<property name="fileName"><![CDATA[PGAdminJIRADB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:02:45.596</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:02:45.596</property>
<property name="fileSize">91902</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959297</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crucible]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:42:22.256</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:42:22.256</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959298</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:42:22.256</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:42:22.256</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959301</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:43:35.768</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:43:35.768</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959302</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:43:35.768</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:43:35.768</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959299</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:42:22.256</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:42:22.256</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209558646</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=greenhopper++planning+board+list+columns&form=QBRE&qs=n]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 10:06:15.242</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 10:06:15.242</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959300</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:42:22.256</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:42:22.256</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959305</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:44:46.392</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:44:46.392</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959306</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:44:46.393</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:44:46.393</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209580233</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+draonslayer&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 05:12:15.108</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 05:12:15.108</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205296505</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=dragon+stage+7&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 17:26:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 17:26:15.082</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959303</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:43:35.768</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:43:35.768</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207978522</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.se/search?hl=sv&client=firefox-a&rls=org.mozilla%3Asv-SE%3Aofficial&hs=7eV&q=jira+here+be+dragon&btnG=S%C3%B6k&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 03:26:16.001</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 03:26:16.001</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">201959304</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 19:43:35.768</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 19:43:35.768</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522147</id>
<property name="fileName"><![CDATA[JIRADashboard2Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391508</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:06:32.402</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:06:32.402</property>
<property name="fileSize">19570</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210131607</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?q=atlassian+there+be+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 09:18:15.335</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 09:18:15.335</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522146</id>
<property name="fileName"><![CDATA[DragIcon.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:01:01.695</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:01:01.695</property>
<property name="fileSize">285</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294369</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327102</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 23:35:55.540</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708774</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675695</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-07 01:34:17.908</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208956400</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&safe=off&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=XBR&q=slay+the+dragon+%2B+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 01:23:15.174</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 01:23:15.174</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207462047</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=atlassian+dragons&src=IE-SearchBox&FORM=IE8SRC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 08:57:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 09:16:15.081</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207357909</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.fr/search?source=ig&hl=fr&rlz=1G1GGLQ_FRFR290&=&q=atlassian+dragon+quest&btnG=Recherche+Google&meta=lr%3D&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 05:04:15.039</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 07:47:15.232</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">164596669</id>
<property name="destinationPageTitle"><![CDATA[//confluence.atlassian.com/labels/listlabels-alphaview.action?key=ATLAS]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496136</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:19:54.682</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:19:54.682</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391003</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423770</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 00:42:59.231</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208003429</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?hl=pl&client=firefox-a&rls=org.mozilla%3Apl%3Aofficial&hs=EXZ&q=Dragon+Slayer+atlassian&btnG=Szukaj&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 03:42:15.168</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 03:42:15.168</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">213844694</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">8912909</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="user"><![CDATA[nkerzman]]></property>
<property name="creationDate">2010-02-18 15:13:45.124</property>
<property name="lastModificationDate">2010-02-18 15:13:45.124</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">213844695</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">8912909</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="user"><![CDATA[nkerzman]]></property>
<property name="creationDate">2010-02-18 15:55:52.784</property>
<property name="lastModificationDate">2010-02-18 15:55:52.784</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424150</id>
<property name="body"><![CDATA[# Turn on the public API and allow unassigned issues:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Enter your password as prompted, to confirm that you want administrator access. (Note that the Atlassian applications will request this confirmation at various steps in the process. This guide will not mention this step again.)
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Add the groups that you will need later for Confluence and Bamboo:
#* Click '*Group Browser*' in the left-hand panel (under 'Users, Groups & Roles').
#* Use the '*Add Group*' panel on the right to add the following groups:
#** {{confluence-users}}
#** {{confluence-administrators}}
#** {{bamboo-admin}}
# Make {color:blue}*Charlie of Atlassian*{color} a user and administrator in Confluence and Bamboo by adding him to the relevant groups:
#* Click 'Bulk Edit Group Members*'.
#* In the left-hand box, select the three groups:
#** {{confluence-users}}
#** {{confluence-administrators}}
#** {{bamboo-admin}}
#* In the right-hand box under '*Add members to selected group(s)*', enter the username {color:blue}*{{charlie}}*{color}.
#* Click '*Join*'. Charlie's name will appear in the middle box as a group member of the selected groups.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391407</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208479560</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=nl&client=safari&rls=en&q=install+greenhopper+on+jira&btnG=Zoeken&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 14:36:15.270</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 14:36:15.270</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207375284</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?source=ig&hl=pl&rlz=1G1GGLQ_PLPL353&=&q=jira+slayer+activation&btnG=Szukaj+w+Google&meta=lr%3D&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 10:59:15.276</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 10:59:15.276</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">208306177</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpaceV2.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-26 23:27:22.932</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-26 23:27:22.932</property>
<property name="fileSize">70841</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618774</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166036588</id>
<property name="body"><![CDATA[This is a new set of documentation. We hope this documentation space will become your first port of call for information on making your [Atlassian products|http://www.atlassian.com] work together.

h6. Introducing the Product Integration Space

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.

Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.

{color:green}*New:*{color} Take a look at the [Application Links|Application Links (AppLinks)] plugin.

h6. Watch this Space!

This documentation is currently under development. We plan to add more information about the existing integration points as soon as possible, and keep adding new integration points as the new software becomes available.
]]></property>
<property name="content" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166003925</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391060</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423826</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 01:30:29.957</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">208306187</id>
<property name="fileName"><![CDATA[FishEyeDashboardV2.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-29 18:27:37.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-29 18:27:37.757</property>
<property name="fileSize">53516</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204772396</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?rls=ig&hl=en&source=hp&q=fisheye+connect+to+database&btnG=Google+Search&meta=&aq=f&oq=fisheye+connect+to+database&emsg=NCSR&ei=LV35Sun8GtCl4Qaw2JDDCw]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 06:32:15.144</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 06:32:15.144</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391055</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203423821</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 00:55:43.241</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208956886</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/briantopping]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 02:30:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 02:30:15.029</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136066</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon&ei=JOIiS4apNNPz_AaF5JzACg&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 18:22:15.030</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 18:22:15.030</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208479325</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=orange+squares+jira+4]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 14:10:15.232</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 14:10:15.232</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207458287</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://plantecnologico.gpm.int/pt/wiki/atlassian]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 03:42:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 11:09:15.130</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168461950</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168560147</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-23 22:57:11.587</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529070</id>
<property name="body"><![CDATA[This is a new set of documentation. We hope that it will become your first port of call for information on making your [Atlassian products|http://www.atlassian.com] work together.

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h6. Watch this space!]]></property>
<property name="content" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">164496394</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454602</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479459</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragon+quest&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 21:09:15.024</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 12:16:15.186</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206798924</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://74.125.95.132/search?q=cache:7L-DLrvDV28J:confluence.atlassian.com/display/ATLAS/Dragons%2BStage%2B3%2B-%2BInstall%2BGreenHopper%2Binto%2BJIRA+jira+manage+sprint+versions&cd=1&hl=en&ct=clnk&gl=us&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 17:00:15.055</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 17:00:15.055</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">179470859</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Studio integration with Bamboo and provides links to more information. Unless otherwise stated, the information here refers to the latest version of JIRA Studio integration with Bamboo. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{excerpt}
Elastic Bamboo is integrated with JIRA Studio.
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:JIRASTUDIO:_about Integrating JIRA Studio with hosted Bamboo|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

For instructions on how to set up Elastic Bamboo with JIRA Studio, see [Getting Started with Bamboo in JIRA Studio|JIRASTUDIO:Getting Started with Bamboo in JIRA Studio].



]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522231</id>
<property name="fileName"><![CDATA[dragon_06.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:38.233</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:38.233</property>
<property name="fileSize">52688</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210127387</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/message.jspa?messageID=257297990]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 02:32:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 02:32:15.021</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522230</id>
<property name="fileName"><![CDATA[dragon_03.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:22.511</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:22.511</property>
<property name="fileSize">49123</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522229</id>
<property name="fileName"><![CDATA[dragon_02.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:22.502</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:22.502</property>
<property name="fileSize">41737</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522228</id>
<property name="fileName"><![CDATA[dragon_01.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:22.494</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:22.494</property>
<property name="fileSize">37788</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522227</id>
<property name="fileName"><![CDATA[dragon_04.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:22.486</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:22.486</property>
<property name="fileSize">53681</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479441</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon+slayer]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 20:55:15.069</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 08:34:15.386</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522226</id>
<property name="fileName"><![CDATA[dragon_05.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:22.466</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:22.466</property>
<property name="fileSize">55370</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210127380</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://forums.atlassian.com/message.jspa?messageID=257297990]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 02:31:15.090</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 02:31:15.090</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202015038</id>
<property name="fileName"><![CDATA[JIRADashboard4Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 22:01:59.358</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:01:59.358</property>
<property name="fileSize">52394</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">3</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522232</id>
<property name="fileName"><![CDATA[dragon_07.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:38.254</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:38.254</property>
<property name="fileSize">65381</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522233</id>
<property name="fileName"><![CDATA[dragon_08.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:46:43.070</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:46:43.070</property>
<property name="fileSize">68802</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202015034</id>
<property name="fileName"><![CDATA[JIRAProjectSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:32:07.189</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:32:07.189</property>
<property name="fileSize">83393</property>
<property name="comment"/><property name="attachmentVersion">5</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202015033</id>
<property name="fileName"><![CDATA[JIRAIssueSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:32:06.130</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:32:06.130</property>
<property name="fileSize">104641</property>
<property name="comment"/><property name="attachmentVersion">5</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209458816</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=Nj3&newwindow=1&q=there+will+be+dragons+jira&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 20:29:15.103</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 20:29:15.103</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136043</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=bamboo+for+jira+studio&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 18:14:15.069</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 18:14:15.069</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207475597</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=jira+studio+bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 10:53:15.170</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 10:53:15.170</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168461919</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168560117</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-23 22:36:40.539</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209580336</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.pl/search?client=firefox-a&rls=org.mozilla%3Apl%3Aofficial&channel=s&hl=pl&source=hp&q=atlassian+here+be+dragons&lr=&btnG=Szukaj+w+Google]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 05:22:15.265</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 03:01:15.274</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168461913</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168560111</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-23 22:23:28.237</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522253</id>
<property name="fileName"><![CDATA[dragon_badge06.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:43.564</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:43.564</property>
<property name="fileSize">10685</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205296631</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.my/search?q=atlassian+dragon+slayer+confluence+port&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 17:44:15.085</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 17:44:15.085</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522252</id>
<property name="fileName"><![CDATA[dragon_badge03.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:14.739</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:14.739</property>
<property name="fileSize">8654</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207466886</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=sv&q=atlassian+dragon+slayer&btnG=S%C3%B6k&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 15:57:15.117</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 15:57:15.117</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522255</id>
<property name="fileName"><![CDATA[dragon_badge08.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:56:49.769</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:56:49.769</property>
<property name="fileSize">10739</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522254</id>
<property name="fileName"><![CDATA[dragon_badge07.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:43.564</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:43.564</property>
<property name="fileSize">10739</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522249</id>
<property name="fileName"><![CDATA[dragon_badge04.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:14.738</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:14.738</property>
<property name="fileSize">9568</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522248</id>
<property name="fileName"><![CDATA[dragon_badge05.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:43.563</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:43.563</property>
<property name="fileSize">10279</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522251</id>
<property name="fileName"><![CDATA[dragon_badge02.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:14.771</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:14.771</property>
<property name="fileSize">8399</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522250</id>
<property name="fileName"><![CDATA[dragon_badge01.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:14.770</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:14.770</property>
<property name="fileSize">7500</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529080</id>
<property name="body"><![CDATA[{children:all=true}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522260</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-17 22:47:34.745</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 22:47:34.745</property>
<property name="fileSize">65529</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014746</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208057475</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://plantecnologico.gpm.int/pt/wiki/atlassian]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 05:36:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 05:36:15.058</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206829325</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=fr&source=hp&q=how+to+install+a+fisheye&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 15:23:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 15:23:15.058</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209580240</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 05:13:15.068</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 05:13:15.068</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209454413</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=sprints]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 11:02:15.285</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 11:02:15.285</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454639</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=This dragon is a big teddy bear. I've completed stage 7 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454640</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168461908</id>
<property name="position"/><property name="title"><![CDATA[_Security Issue Severity Levels]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168560106</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-23 22:06:23.245</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454641</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454635</id>
<property name="destinationPageTitle"><![CDATA[Linking JIRA Issues to a Build]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810160</id>
<property name="fileName"><![CDATA[ConfluenceDemoSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-16 20:23:13.473</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:23:13.473</property>
<property name="fileSize">275909</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014741</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168461911</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168560109</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-23 22:08:01.917</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454636</id>
<property name="destinationPageTitle"><![CDATA[Viewing the Bamboo Builds related to an Issue]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810161</id>
<property name="fileName"><![CDATA[ConfluenceDemoSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-03-28 20:04:47.140</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-28 20:04:47.140</property>
<property name="fileSize">288298</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014741</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454637</id>
<property name="destinationPageTitle"><![CDATA[Browsing a Project's Bamboo Builds]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208956794</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.sg/search?hl=en&q=web+application+SSO&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 02:18:15.162</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 02:18:15.162</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454638</id>
<property name="destinationPageTitle"><![CDATA[Browsing a Version's Bamboo Builds]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522295</id>
<property name="fileName"><![CDATA[FishEyeSourceView.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-21 00:19:36.263</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 00:19:36.263</property>
<property name="fileSize">86791</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014947</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207475580</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 10:52:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 10:52:15.128</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522294</id>
<property name="fileName"><![CDATA[FishEyeQuickNav.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 20:43:31.150</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 20:43:31.150</property>
<property name="fileSize">5759</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522293</id>
<property name="fileName"><![CDATA[FishEyeDashboard.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-21 18:45:33.293</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 18:45:33.293</property>
<property name="fileSize">95599</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014802</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208479374</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=jira+4+gadget+orange&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 14:16:15.215</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 14:16:15.215</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206810634</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragonslayer&rls=com.microsoft:en-us&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 14:36:15.261</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 14:36:15.261</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454626</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454625</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522297</id>
<property name="fileName"><![CDATA[JIRAIssueSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-21 22:19:30.738</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 22:19:30.738</property>
<property name="fileSize">49714</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015033</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210127356</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=confluence+here+be+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 02:27:15.207</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 02:27:15.207</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454624</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522298</id>
<property name="fileName"><![CDATA[JIRAProjectSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-21 22:55:13.936</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 22:55:13.936</property>
<property name="fileSize">34691</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015034</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454623</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8080/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454622</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8080/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454621</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454620</id>
<property name="destinationPageTitle"><![CDATA[//maven.atlassian.com/content/groups/public/com/atlassian/crowd/crowd-integration-client/2.3.0-m4/crowd-integration-client-2.3.0-m4.jar]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522302</id>
<property name="fileName"><![CDATA[JIRADashboard4Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-27 23:03:07.294</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 23:03:07.294</property>
<property name="fileSize">60332</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015038</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454619</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522303</id>
<property name="fileName"><![CDATA[JIRAProjectSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 21:41:13.206</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 21:41:13.206</property>
<property name="fileSize">39624</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015034</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454634</id>
<property name="destinationPageTitle"><![CDATA[Creating a Plan]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522304</id>
<property name="fileName"><![CDATA[JIRAIssueSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 21:35:48.530</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 21:35:48.530</property>
<property name="fileSize">55380</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015033</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454633</id>
<property name="destinationPageTitle"><![CDATA[//bitbucket.org/atlassian_dragons/dragonslayers]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454632</id>
<property name="destinationPageTitle"><![CDATA[Configuring Application Links]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454631</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205296704</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://bl146w.blu146.mail.live.com/mail/InboxLight.aspx?FolderID=00000000-0000-0000-0000-000000000001&InboxSortAscending=False&InboxSortBy=Date&n=1425070831]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 17:57:15.086</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 17:57:15.086</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454630</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202015110</id>
<property name="fileName"><![CDATA[PGAdminBambooDB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:36.282</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:36.282</property>
<property name="fileSize">68481</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454629</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517542</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550144</id>
</element>
</collection>
<property name="version">57</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-30 16:09:23.543</property>
<property name="versionComment"><![CDATA[Different column formatting]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454628</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454627</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.926</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522313</id>
<property name="fileName"><![CDATA[BambooBuildComplete.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:26.690</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:26.690</property>
<property name="fileSize">45517</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454609</id>
<property name="destinationPageTitle"><![CDATA[Configuring a new Executable]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454610</id>
<property name="destinationPageTitle"><![CDATA[Setting up your Plugin Development Environment]]></property>
<property name="destinationSpaceKey"><![CDATA[DEVNET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209580296</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+slay+the+dragon&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 05:19:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 06:56:15.026</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454607</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517548</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550149</id>
</element>
</collection>
<property name="version">71</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-06 18:21:06.951</property>
<property name="versionComment"><![CDATA[Reinforced instruction not to use the JIRA installer]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522314</id>
<property name="fileName"><![CDATA[BambooBuildInProgress.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-25 00:11:18.547</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 00:11:18.547</property>
<property name="fileSize">79209</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375296</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454608</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454605</id>
<property name="destinationPageTitle"><![CDATA[//www.pgadmin.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207483655</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.exalead.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 12:06:15.064</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 12:06:15.064</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">204245151</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">204406829</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="user"><![CDATA[cmoseley]]></property>
<property name="creationDate">2009-11-06 13:37:40.174</property>
<property name="lastModificationDate">2009-11-06 13:37:40.174</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517549</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550151</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:24:13.023</property>
<property name="versionComment"><![CDATA[Updated for GreenHopper 4.2]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522316</id>
<property name="fileName"><![CDATA[BambooPlanSummary.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:34.749</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:34.749</property>
<property name="fileSize">59566</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454606</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454603</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517552</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550154</id>
</element>
</collection>
<property name="version">86</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:38:27.989</property>
<property name="versionComment"><![CDATA[Updated for FishEye 2.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454604</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517551</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550153</id>
</element>
</collection>
<property name="version">80</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-10 20:52:49.664</property>
<property name="versionComment"><![CDATA[Added missing colon to database URL]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522321</id>
<property name="fileName"><![CDATA[BambooJIRAIssues.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-25 01:33:27.078</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 01:33:27.078</property>
<property name="fileSize">45087</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375301</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454617</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="BlogPost" package="com.atlassian.confluence.pages">
<id name="id">166004350</id>
<property name="title"><![CDATA[Welcome to Atlassian Product Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166036980</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-12 20:28:32.759</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-12 20:30:17.556</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166003925</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522320</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-25 00:43:28.865</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 00:43:28.865</property>
<property name="fileSize">60315</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375298</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454618</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454615</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210118487</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=jira+dragon&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 07:17:15.211</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 07:17:15.211</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522323</id>
<property name="fileName"><![CDATA[JIRADashboard6Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-27 21:23:21.094</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 21:23:21.094</property>
<property name="fileSize">94567</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375372</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517556</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550158</id>
</element>
</collection>
<property name="version">63</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:40:45.749</property>
<property name="versionComment"><![CDATA[Updated for FishEye 2.1 and Confluence 3.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522322</id>
<property name="fileName"><![CDATA[JIRAIssueBuild.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-27 19:56:16.973</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 19:56:16.973</property>
<property name="fileSize">63333</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375361</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454616</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517558</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550160</id>
</element>
</collection>
<property name="version">68</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:46:48.077</property>
<property name="versionComment"><![CDATA[Updated to Bamboo 2.4.2]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454613</id>
<property name="destinationPageTitle"><![CDATA[Running the Setup Wizard]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522324</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful-annotated.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-25 01:45:02.482</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 01:45:02.482</property>
<property name="fileSize">147318</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375303</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454614</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454611</id>
<property name="destinationPageTitle"><![CDATA[Maven Cannot Find Java Mail, Java Activation or JTA]]></property>
<property name="destinationSpaceKey"><![CDATA[DEVNET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517560</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550162</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-08 00:02:33.832</property>
<property name="versionComment"><![CDATA[Added link to "Life after Dragons"]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454612</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8085/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:48:11.925</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.925</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">236586351</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">236618975</id>
</element>
</collection>
<property name="version">92</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-04 21:55:59.982</property>
<property name="versionComment"><![CDATA[Fixed link to page about setting up AppLinks etc]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294738</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327449</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:02:35.196</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473516</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506282</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 00:34:57.226</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">236586348</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">236618972</id>
</element>
</collection>
<property name="version">91</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:26:44.534</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision - added Crucible]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294732</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327443</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-15 22:57:48.649</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487962</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520654</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 22:25:22.214</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294730</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327441</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-15 21:35:59.747</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205292490</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=dragons+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 11:02:15.399</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 11:02:15.399</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294733</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327444</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 22:44:36.615</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204771585</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.facebook.com/home.php?]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 05:19:15.075</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 21:16:15.136</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394673</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427286</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 23:09:53.582</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473498</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 9 - Add Bamboo Gadget]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506265</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:58:02.374</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394671</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427284</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 19:25:32.337</property>
<property name="versionComment"><![CDATA[T-shirt links]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">165120872</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">165087966</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-04 00:09:21.491</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473505</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506272</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 23:17:26.395</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294717</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327428</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 22:20:12.117</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208007969</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=agile+oauth+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 09:59:15.328</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 09:59:15.328</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897034</id>
<property name="fileName"><![CDATA[JIRADashboardStage6-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 20:07:17.822</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:07:17.822</property>
<property name="fileSize">82949</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897035</id>
<property name="fileName"><![CDATA[FishEyeCrucibleAppLinks.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 20:07:27.883</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:07:27.883</property>
<property name="fileSize">64952</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210114086</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=nnQgS-6DJYmwngeNh_HVDQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 22:10:15.216</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 22:10:15.216</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897033</id>
<property name="fileName"><![CDATA[InsertJIRAIcon.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 19:29:11.803</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:29:11.803</property>
<property name="fileSize">660</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897038</id>
<property name="fileName"><![CDATA[BambooBuildInProgress1-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 20:12:20.812</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:12:20.812</property>
<property name="fileSize">33898</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897039</id>
<property name="fileName"><![CDATA[BambooBuildComplete1-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 20:12:24.062</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:12:24.062</property>
<property name="fileSize">48873</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423831</id>
<property name="body"><![CDATA[Requirements: *Oracle JDK {excerpt-include:_DragonsVersionNumber-JDK|nopanel=true} or higher*. Note that the JRE alone is not enough.

If you do not have the right version of the Java Development Kit (JDK) already installed, follow the steps below to get it.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download the [Oracle Java SE Development Kit (JDK)|http://www.oracle.com/technetwork/java/javase/downloads/index.html].
#* Get the latest version of the JDK 1.6, at least *version 6u23 or later*.
#* If you are running 64-bit Windows, please ensure that you use *32-bit JDK* and not the 'x64' JDK.
# Follow the [Oracle installation instructions|http://www.oracle.com/technetwork/java/javase/index-137561.html].
# Make sure you have a {{JAVA_HOME}} environment variable pointing to the root directory of the JDK. Some JDK installers set this automatically.
#* Check by typing one of the following into a command window, depending on your operating system.
#** On Windows: {{echo %JAVA_HOME%}}
#** On Linux or UNIX: {{echo $JAVA_HOME}}
#* If the above command does not show you the path to your JDK, please refer to the Crowd instructions on [setting JAVA_HOME|CROWD:Setting JAVA_HOME].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423834</id>
<property name="body"><![CDATA[Requirements: *PostgreSQL version {excerpt-include:_DragonsVersionNumber-PostgreSQL|nopanel=true}*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download [PostgreSQL|http://www.postgresql.org/download/] -- Get the latest {excerpt-include:_DragonsVersionNumber-PostgreSQL|nopanel=true}. For the simplest installation, choose one of the one-click installers.
# Install PostgreSQL. If you chose one of the PostgreSQL one-click installers, this is simple: Run the executable that you downloaded and follow the prompts. Ensure that you choose UTF8 (unicode) encoding when selecting the locale. If necessary, you can refer to the [PostgreSQL installation instructions|http://www.enterprisedb.com/resources-community/pginst-guide].
# Enter a password for the super user ('postgres').
# Accept the default port {{5432}}.
# Accept all the other default settings.
# Download the PostgreSQL {excerpt-include:_DragonsVersionNumber-PostgreSQL|nopanel=true} JDBC driver from [http://jdbc.postgresql.org/download.html] and save it locally for later use. Here is a direct link to the required JAR file: [JDBC4 Postgresql Driver, Version 8.4-702|http://jdbc.postgresql.org/download/postgresql-8.4-702.jdbc4.jar].
_Note:_ Internet Explorer may rename the file extension from '{{.jar}}' to '{{.zip}}' when you download it. If you are using Internet Explorer, please rename the file so that it has a '{{.jar}}' extension after downloading it.
{panel} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897036</id>
<property name="fileName"><![CDATA[CrucibleJIRASettingsSubtasks-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 20:10:40.129</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:10:40.129</property>
<property name="fileSize">20902</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897037</id>
<property name="fileName"><![CDATA[JIRADashboardStage7-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 20:10:41.887</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:10:41.887</property>
<property name="fileSize">95422</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209555081</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/reader/view/?hl=en&tab=wy]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 04:53:15.091</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 04:53:15.091</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235897040</id>
<property name="fileName"><![CDATA[JIRADashboardStage9-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-22 20:13:28.063</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:13:28.063</property>
<property name="fileSize">111705</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210131294</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=greenhopper+requirements]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 08:53:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 08:53:15.028</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210117936</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.lv/search?q=how+to+install+maven+agent+on+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 06:20:15.245</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 06:20:15.245</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294704</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327416</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:08:11.299</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207374440</id>
<property name="viewCount">7</property>
<property name="url"><![CDATA[http://us.mg1.mail.yahoo.com/dc/blank.html?bn=211.6&.intl=uk&.lang=en-US]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 10:03:15.124</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 09:57:15.108</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709093</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675981</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 23:59:31.083</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294692</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327404</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-15 21:19:24.484</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207379356</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://guide.opendns.com/controller.php?url=atlassian+dragon+slayer&client=ff&ref=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 18:04:15.022</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 18:04:15.022</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709096</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675984</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 00:25:07.881</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294693</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327405</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-15 21:34:07.373</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208058319</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fr/search?hl=fr&client=firefox-a&rls=org.mozilla%3Afr%3Aofficial&hs=NnL&q=bamboo+integration&btnG=Rechercher&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 07:14:15.168</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 07:14:15.168</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204768269</id>
<property name="viewCount">9</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragon&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 23:15:15.065</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 03:34:15.764</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207362023</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fr/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=OoEBS62JNcy2jAf5mPmXCw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 10:44:15.125</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 10:44:15.125</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210123694</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=%22mylyn+connector+discovery%22+missing&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 15:03:15.241</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 15:03:15.241</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479333</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=mVf&q=here+be+dragons&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 20:00:15.097</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 20:00:15.097</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206803217</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.nl/search?hl=nl&q=confluence+here+be+dragons&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 04:22:15.193</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 04:22:15.193</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294679</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327391</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:09:08.039</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709076</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675964</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 23:49:56.777</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206810729</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=confluence+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 14:45:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 14:45:15.070</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487912</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520607</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 19:56:55.832</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394596</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427209</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 21:20:51.116</property>
<property name="versionComment"><![CDATA[Minor wording tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207379309</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=fisheye+subversion+hook&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 17:57:15.075</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 17:57:15.075</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294675</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327387</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:08:30.982</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294674</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327386</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:07:41.423</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294671</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327383</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 21:54:40.623</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394588</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427202</id>
</element>
</collection>
<property name="version">84</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-10-05 19:17:52.142</property>
<property name="versionComment"><![CDATA[Added installation note about waiting for server to launch as a result of QA feedback.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487904</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520599</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 19:08:34.591</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207467337</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-US%3AIE-SearchBox&rlz=1I7GGLA_en&q=Jira+Greenhopper+dashboard&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 16:48:15.102</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 16:48:15.102</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294668</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327380</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 02:11:06.330</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394590</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427204</id>
</element>
</collection>
<property name="version">58</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:21:13.321</property>
<property name="versionComment"><![CDATA[Charlie's clothing]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394592</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427206</id>
</element>
</collection>
<property name="version">64</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 22:06:32.457</property>
<property name="versionComment"><![CDATA[Removed the party from the tweet too]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294664</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327376</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 23:56:27.406</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294663</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327375</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 23:59:59.139</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961728</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994483</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 23:18:14.734</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294661</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327373</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 20:01:49.986</property>
<property name="versionComment"><![CDATA[Fixed caps in UNIX]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487927</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520622</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 20:15:06.563</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294660</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327372</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 00:20:14.568</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294659</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327371</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 22:54:25.379</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294656</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327368</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 00:01:02.454</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208003719</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ee/search?q=installing+bamboo+crowd-integration-client-1.6.1&ie=utf-8&oe=utf-8&aq=t&client=firefox-a&rlz=1R1GGGL_en-GB___EE352]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 04:06:15.141</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 04:06:15.141</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208007924</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=JIRA+GADGETS+add+gadget+to+directory+from+local+pc&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 09:56:15.260</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 09:56:15.260</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208058423</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.sk/search?source=ig&hl=sk&rlz=&=&q=jiraissues+confluence&btnG=H%C4%BEada%C5%A5+v+Google&meta=lr%3D]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 07:23:15.220</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 07:23:15.220</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209563963</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.hu/search?q=jira+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:hu:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 20:30:15.094</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 20:30:15.094</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709053</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675942</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 22:55:30.526</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487916</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520611</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 20:13:00.116</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961729</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994484</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-29 22:16:45.206</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168002842</id>
<property name="position"/><property name="title"><![CDATA[JIRA Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168068227</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:19.368</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-12 00:36:08.351</property>
<property name="versionComment"><![CDATA[Tech writer review]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204771601</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 05:20:15.169</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 11:47:15.178</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207467303</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=1G1TSHBCENUS344&q=enter+now+if+you+dare+enter+now+the+dragon%27s+lair&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 16:44:15.247</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 16:44:15.247</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136770</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 01:53:15.123</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 00:24:15.052</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204771605</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=atlassian+dragon+slayer]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 05:20:15.218</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 05:20:15.218</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209458708</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon%27s+lair]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 20:05:15.125</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 20:05:15.125</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487930</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520625</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 21:11:06.038</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207379284</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=confluence.atlassian.com%2Fdisplay%2Fatlas&form=QBRE&filt=all&qs=n]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 17:54:15.074</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 17:54:15.074</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207483241</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.no/search?sourceid=navclient&hl=no&ie=UTF-8&rlz=1T4ADBR_noNO347NO347&q=jira%2cinstall%2clogin%2cpassword]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 09:05:15.282</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 09:05:15.282</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487960</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520653</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 21:22:28.532</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204768205</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257297981]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 23:00:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 23:00:15.021</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206818456</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 08:11:15.141</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 08:11:15.141</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207474932</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ie/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 09:53:15.220</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 09:53:15.220</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209576939</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/news/2009/10/atlassian_weekly_blog_roundup_halloween_edition.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+AtlassianBlog+%28Atlassian+Blog%29&utm_content=Twitter]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 21:49:15.156</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 21:49:15.156</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207999867</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+bamboo+integration&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 17:19:15.066</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 17:19:15.066</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205295785</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=uae&q=confluence+wiki+JIRA+issue+list+integration&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 16:04:15.074</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 16:04:15.074</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294858</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327561</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 00:41:17.513</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207383334</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://docs.google.com/Doc?docid=0Af_rSQ95tpGCZGN3enh6OWJfMGhkYjl4ajV2&hl=en]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 04:34:15.243</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 04:34:15.243</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585508</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618242</id>
</element>
</collection>
<property name="version">62</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-29 19:45:20.743</property>
<property name="versionComment"><![CDATA[JIRA project will not show commits now because more than 30 days ago]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585506</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618240</id>
</element>
</collection>
<property name="version">85</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:57:13.987</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227416179</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227448115</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-05 22:55:20.303</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585504</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618238</id>
</element>
</collection>
<property name="version">78</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:27:47.959</property>
<property name="versionComment"><![CDATA[Updated for Confluence 3.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473643</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506393</id>
</element>
</collection>
<property name="version">63</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 23:13:14.808</property>
<property name="versionComment"><![CDATA[Fixed small typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294871</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327573</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 01:18:01.860</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585498</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618233</id>
</element>
</collection>
<property name="version">77</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 21:10:21.764</property>
<property name="versionComment"><![CDATA[Changed version of crowd-integration-client to 2.0.2]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209458545</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=jira+dragon+slayer&cts=1259890142550&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 19:29:15.045</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 19:29:15.045</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204768190</id>
<property name="viewCount">106</property>
<property name="url"><![CDATA[http://www.atlassian.com/starter/faq.jsp]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 22:56:15.060</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 19:57:15.028</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774561</id>
<property name="fileName"><![CDATA[CrucibleJIRASettingsSubtasks.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 01:11:31.337</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 01:11:31.337</property>
<property name="fileSize">57079</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774459</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774560</id>
<property name="fileName"><![CDATA[JIRAIssueReviewsTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 02:20:29.937</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:20:29.937</property>
<property name="fileSize">55874</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774469</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585528</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618261</id>
</element>
</collection>
<property name="version">50</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-13 16:24:10.971</property>
<property name="versionComment"><![CDATA[Added note about Maven, javax and Atlassian Plugin SDK]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294847</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327551</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 00:26:43.068</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708987</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675877</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:12:08.221</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208951754</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.mx/search?hl=es&q=Bamboo+integration+&btnG=Buscar&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 13:01:15.261</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 13:01:15.261</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585524</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618258</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 23:15:54.822</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585521</id>
<property name="position"/><property name="title"><![CDATA[Running Bamboo in a Console Window]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618255</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:22:19.918</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 23:07:19.360</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708986</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675876</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:31:31.156</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208471456</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=jira+install+greenhopper]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 02:06:15.024</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 02:06:15.024</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585520</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618254</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 23:46:53.630</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708996</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675885</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:56:19.468</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585516</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618250</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 23:00:40.672</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774559</id>
<property name="fileName"><![CDATA[JIRADashboardStage7.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 02:24:09.979</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:24:09.979</property>
<property name="fileSize">109190</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774468</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585514</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618248</id>
</element>
</collection>
<property name="version">67</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 21:11:40.643</property>
<property name="versionComment"><![CDATA[Changed version of crowd-integration-client to 2.0.2]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774558</id>
<property name="fileName"><![CDATA[CrucibleReviewCommentJIRAIssue.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-06 00:40:53.513</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-06 00:40:53.513</property>
<property name="fileSize">84750</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708973</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675863</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 20:48:09.629</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294825</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327530</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:26:43.042</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294828</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327533</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 00:01:23.460</property>
<property name="versionComment"><![CDATA[Configuration corrections in the installation section]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294827</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327532</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:33:29.193</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207474888</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=Dragons+Atlassian+Milestone+Jira&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 09:50:15.229</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 09:50:15.229</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294830</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327535</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:39:00.524</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209576853</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=how+to+make+issues+show+up+in+greenhopper&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 21:33:15.089</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 21:33:15.089</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585540</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618272</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:48:19.713</property>
<property name="versionComment"><![CDATA[Updated for Confluence 3.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585534</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618266</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-06 00:26:59.443</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708981</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675871</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:22:31.543</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774603</id>
<property name="fileName"><![CDATA[JIRADashboardStage7.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-05 22:56:41.158</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-05 22:56:41.158</property>
<property name="fileSize">107119</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774468</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708983</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675873</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:28:00.721</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708977</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675867</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:15:27.367</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774606</id>
<property name="fileName"><![CDATA[CrucibleJIRASettingsSubtasks.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-05 22:58:58.713</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-05 22:58:58.713</property>
<property name="fileSize">57114</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774459</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708978</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675868</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:16:09.841</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774607</id>
<property name="fileName"><![CDATA[CrucibleReviewCommentJIRAIssue.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-05 22:45:21.408</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-05 22:45:21.408</property>
<property name="fileSize">84750</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774558</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208951697</id>
<property name="viewCount">7</property>
<property name="url"><![CDATA[http://delicious.com/almergabor]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 12:57:18.298</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 15:57:15.180</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774604</id>
<property name="fileName"><![CDATA[JIRAIssueReviewsTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-05 22:57:29.158</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-05 22:57:29.158</property>
<property name="fileSize">49609</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774469</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708980</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675870</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:20:38.628</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774605</id>
<property name="fileName"><![CDATA[CrucibleJIRAProjectEntityLink.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 01:13:39.802</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 01:13:39.802</property>
<property name="fileSize">44715</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774460</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294810</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327515</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:03:10.628</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207379494</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://ffeathers.wordpress.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 18:29:15.065</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 07:25:15.195</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708960</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675850</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 19:00:49.105</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208475769</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.de/search?hl=de&source=hp&q=Bamboo+Eclipse+Integration+Beschreibung&meta=&aq=o&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 08:54:15.158</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 09:00:15.106</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294812</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327517</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:14:24.100</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294814</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327519</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:19:00.862</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209468426</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=confluence+dragon+slayer&ei=YpEZS4fZDJOk8Ab_ueToAw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 16:47:15.164</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 16:47:15.164</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209563735</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://search.popurls.com/?q=scrum&x=0&y=0]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 19:37:15.048</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 19:37:15.048</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208054498</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.th/search?hl=th&q=bamboo+setup&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 21:28:15.041</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 21:28:15.041</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708966</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675856</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 20:32:32.848</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207487891</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207520586</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-19 22:39:11.270</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294820</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327525</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:21:17.955</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708962</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675852</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 20:27:08.140</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294821</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327526</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:28:58.389</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708964</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675854</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 20:29:17.690</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208471485</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://SubtextProject.com/Services/default.htm]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 02:10:15.117</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 02:10:15.117</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294800</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327505</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:37:30.899</property>
<property name="versionComment"><![CDATA[Fixed init properties file name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208007813</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=bamboo+link+jira&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 09:48:15.152</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 09:48:15.152</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240192326</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240224857</id>
</element>
</collection>
<property name="version">78</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-28 22:56:46.299</property>
<property name="versionComment"><![CDATA[Fixed field names and removed "When the build has finished"]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207383268</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&safe=off&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=EGi&q=dragonquest+atlassian&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 04:29:15.196</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 04:29:15.196</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240192327</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240224858</id>
</element>
</collection>
<property name="version">63</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:05:37.473</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210117718</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&q=bamboo+eclipse&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 05:59:15.080</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 05:59:15.080</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294802</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327507</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-15 23:30:13.635</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205292547</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=37662&tstart=0]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 11:07:15.121</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 10:02:15.249</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210131525</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=29080&tstart=-5]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 09:12:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 09:12:15.078</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479154</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=here+be+dragons+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 18:40:15.072</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 16:56:15.142</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206214110</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=en&source=hp&fkt=1797&fsdt=8132&q=jira+dragons+lair&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 11:55:15.152</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 11:55:15.152</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">236586401</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">236619023</id>
</element>
</collection>
<property name="version">94</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-05 00:21:43.971</property>
<property name="versionComment"><![CDATA[Fixed name of RSS Feed option and changeset number]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208065879</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.sg/search?hl=en&source=hp&q=stages+of+java+database+connection&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 10:15:15.064</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 10:15:15.064</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209568165</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=jira+install+greenhopper&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 06:29:15.064</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 06:29:15.064</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227416100</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227448042</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-05 22:52:31.348</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423814</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will configure some JIRA options, and create a project and dashboard for use in the subsequent stages of this integration procedure.

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to use that database for your other applications too. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. _Optional:_ Create your JIRA Database in PostgreSQL

Below are the instructions for creating a JIRA database in a PostgreSQL database server.
* If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with that server and skip this step.
* If your JIRA installation is using the default HSQLDB, supplied with JIRA for evaluation purposes, you will need to migrate to another database before using JIRA in a production environment. Please follow the instructions on [migrating your JIRA data to an external database|JIRA:Switching Databases].

{include:_Dragons JIRA Database|nopanel=true}

{anchor:upgrade}
h2. Step 4. Upgrade JIRA If Necessary

Requirements: *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Check your version of JIRA.
# If you do not have *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}* or later, follow the instructions on [upgrading to JIRA 4.3.3|JIRA:JIRA 4.3.3 Upgrade Guide].
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Configure JIRA Options

In this step you will enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Log in to JIRA with an administrator account.
# Create a new administrator account for {color:blue}*Charlie of Atlassian*{color}:
#* Click '*Administration*' in JIRA's top navigation bar.
#* The 'Projects' administration screen will appear. Click '*User Browser*' in the left-hand panel.
#* The 'User Browser' screen will appear. Click '*Add User*'.
#* The 'Create New User' screen will appear. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#** Send Password Email -- Untick this checkbox.
#* Click '*Create*'.
#* Now you will add Charlie to the '{{jira-administrators}}' group. Click '*Group Browser*' in the left-hand panel.
#* Click the '{{*jira-administrators*}}' group.
#* Click '*Edit Members*'.
#* Select '*{{charlie}}*' in the list under '*Join*'.
#* Click '*Join*'.
# Check JIRA's base URL:
#* Click '*General Configuration*' in the left-hand panel.
#* Change the '*Base URL*' if necessary. It must contain the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
# Check the following configurations and update them if necessary:
{include:_Dragons Partial JIRA Setup|nopanel=true}
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:project}
h2. Step 6. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=JIRA is hot, the dragon is not! I've completed stage 1 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Join the mainstream dragon slayers! Go to [Dragons Stage 2 - Install GreenHopper into JIRA|Dragons Stage 2 - Install GreenHopper into JIRA]. 
{column}
{section} 

]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294780</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327487</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:22:05.798</property>
<property name="versionComment"><![CDATA[Removed game]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479177</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 18:48:15.034</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 18:48:15.034</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">236586395</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">236619018</id>
</element>
</collection>
<property name="version">93</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-04 22:25:34.514</property>
<property name="versionComment"><![CDATA[Fixed field name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708932</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675823</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 00:36:55.752</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294789</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327494</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:31:46.113</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208062113</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&safe=off&client=safari&rls=en&q=install+confluence+postgres&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 19:34:15.022</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 19:34:15.022</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">236586397</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">236619020</id>
</element>
</collection>
<property name="version">69</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:07:00.412</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227416096</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227448039</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:31:33.762</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294765</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327475</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:12:04.061</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136899</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_en-USUS292US304&aq=f&sourceid=chrome&ie=UTF-8&q=adlassian+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 03:07:15.042</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 03:07:15.042</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206829049</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=Bamboo+in+JIRA+Studio&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 13:32:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 13:32:15.025</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423762</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Complete this stage first:
* [Dragons with JIRA Stage 1 - Set Up Environment and JIRA]

Then join the rest of the brave dragon slayers at stage 2:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 4 - Install FishEye and Crucible]
* [Dragons Stage 5 - Get JIRA and FishEye Talking]
* [Dragons Stage 6 - Get JIRA and Crucible Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208480154</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=build+an+eclipse+project+with+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 15:39:15.224</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 15:39:15.224</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205684929</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/newsletter/2009/10/#Integrating%20Atlassian%20apps%20and%20slaying%20dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 19:44:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 19:44:15.058</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473750</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506497</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 02:21:49.012</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208471419</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ch/url?sa=t&source=web&ct=res&cd=3&ved=0CBAQFjAC&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FBamboo%2BBuilds%2Bin%2BEclipse&rct=j&q=bamboo+eclipse+plugin&ei=M3sTS66_CMiPsAa69LTOBw&usg=AFQjCNGl5lO9uet7Wp-U_sSdTNDUBb7PvA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 01:59:15.165</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 01:59:15.165</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">211747158</id>
<property name="destinationPageTitle"><![CDATA[Guide to Installing an Atlassian Integrated Suite]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-01-03 15:58:04.020</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-03 15:58:04.020</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473737</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506484</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 20:36:25.282</property>
<property name="versionComment"><![CDATA[Added build tool to software requirements]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294775</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327483</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-15 22:59:24.456</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473741</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506488</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 20:41:54.578</property>
<property name="versionComment"><![CDATA[Added JDK to software requirements]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473742</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506489</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 20:42:55.752</property>
<property name="versionComment"><![CDATA[Fixed small typos]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">211747159</id>
<property name="destinationPageTitle"><![CDATA[Links and Resources]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-01-03 15:58:04.020</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-03 15:58:04.020</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294771</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327480</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:19:57.507</property>
<property name="versionComment"><![CDATA[Removed game]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211648721</id>
<property name="position">2</property>
<property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211714236</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:13:58.942</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294752</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327463</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:15:22.283</property>
<property name="versionComment"><![CDATA[Removed instructions for MAC OS X]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294745</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327456</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:14:34.849</property>
<property name="versionComment"><![CDATA[Removed instructions for MAC OS X]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473734</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506481</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:34:41.721</property>
<property name="versionComment"><![CDATA[Added note about passwords]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209585495</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209618230</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 19:34:15.448</property>
<property name="versionComment"><![CDATA[Minor wording improvements]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294759</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327469</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:11:08.730</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208054556</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cn/search?hl=zh-CN&newwindow=1&q=Atlassian+Bamboo+++License+Key&btnG=Google+%E6%90%9C%E7%B4%A2&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 21:52:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 21:52:15.021</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">235896956</id>
<property name="fileName"><![CDATA[JIRAIssueReviewsTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-06 00:40:44.732</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-06 00:40:44.732</property>
<property name="fileSize">49609</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774469</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206815209</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=how+to+install+greenhopper+plugin+for+jira+4&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 02:51:15.068</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 02:51:15.068</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206829057</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.it/search?hl=it&client=firefox-a&rls=org.mozilla%3Ait%3Aofficial&num=50&q=sso+web+applications&btnG=Cerca&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 13:36:15.077</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 13:36:15.077</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294756</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327467</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:09:29.458</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209564147</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.facebook.com/home.php]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 21:19:15.130</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 21:19:15.130</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206818670</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=JIRA+sprints&FORM=MSNH11&qs=n]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 08:28:15.098</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 08:28:15.098</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207467513</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=jira+bamboo&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 17:17:15.089</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 17:17:15.089</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207383977</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=jira+install+greenhopper&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 05:34:15.103</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 05:34:15.103</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241052417</id>
<property name="destinationPageTitle"><![CDATA[Setting JAVA_HOME]]></property>
<property name="destinationSpaceKey"><![CDATA[CROWD]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-22 23:00:17.297</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:00:17.297</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241052416</id>
<property name="destinationPageTitle"><![CDATA[//www.oracle.com/technetwork/java/javase/index-137561.html]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-22 23:00:17.297</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:00:17.297</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241052415</id>
<property name="destinationPageTitle"><![CDATA[//www.oracle.com/technetwork/java/javase/downloads/index.html]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-22 23:00:17.297</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:00:17.297</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774443</id>
<property name="fileName"><![CDATA[JIRAProjectSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-30 18:45:50.694</property>
<property name="fileSize">88415</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209564160</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=Atlassian+Here+Be+Dragons&ei=G8YdS9rDG4_8tAPLov2HCg&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 21:21:15.127</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 21:21:15.127</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774442</id>
<property name="fileName"><![CDATA[JIRAIssueSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.679</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-30 18:45:50.679</property>
<property name="fileSize">108779</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774441</id>
<property name="fileName"><![CDATA[JIRADashboardStage6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.664</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-30 18:45:50.664</property>
<property name="fileSize">93510</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774440</id>
<property name="fileName"><![CDATA[JIRADashboard4Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.646</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-30 18:45:50.646</property>
<property name="fileSize">52394</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394406</id>
<property name="position">3</property>
<property name="title"><![CDATA[Guide to Installing an Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427026</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-05 18:33:16.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 23:48:12.881</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210136927</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&source=hp&q=greenhopper+4+cant+drag+drop+planning+board&btnG=Google+Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 03:19:15.041</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 03:19:15.041</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210135372</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257320576&]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 16:04:15.166</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 16:04:15.166</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208054651</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=jira+issue+source+tab&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 22:16:15.085</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 22:16:15.085</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774459</id>
<property name="fileName"><![CDATA[CrucibleJIRASettingsSubtasks.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-06 00:40:52.115</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-06 00:40:52.115</property>
<property name="fileSize">57114</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208008206</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=fM0&q=jira+dragonslayer&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 10:17:15.115</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 10:17:15.115</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774460</id>
<property name="fileName"><![CDATA[CrucibleJIRAProjectEntityLink.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-06 00:40:50.916</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-06 00:40:50.916</property>
<property name="fileSize">44715</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685234</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+slay+the+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 20:49:15.047</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 20:49:15.047</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774468</id>
<property name="fileName"><![CDATA[JIRADashboardStage7.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-06 00:40:44.556</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-06 00:40:44.556</property>
<property name="fileSize">107119</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774469</id>
<property name="fileName"><![CDATA[JIRAIssueReviewsTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-03-21 00:19:24.463</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-21 00:19:24.463</property>
<property name="fileSize">47762</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">4</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">228819066</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">228917261</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="user"><![CDATA[alice.paillard@valiantys.com]]></property>
<property name="creationDate">2010-12-14 08:20:09.898</property>
<property name="lastModificationDate">2010-12-14 08:20:09.898</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">227774470</id>
<property name="fileName"><![CDATA[JIRADashboardStage7.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 02:16:27.036</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:16:27.036</property>
<property name="fileSize">104794</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">227774468</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208479951</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=virus+checkers+and+build+processes&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 15:17:15.211</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 15:17:15.211</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207366147</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/reader/view/?tab=cy]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 17:25:15.083</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 17:25:15.083</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209564137</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.facebook.com/jason.hinch?v=feed&story_fbid=1315365923189]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 21:15:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 00:14:15.061</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206818656</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=Quc&q=bamboo+eclipse+plugin&btnG=Search&aq=0&oq=bamboo+ecl]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 08:27:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 08:27:15.078</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209572813</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=installing+greenhooper+plugin&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 12:49:15.135</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 12:49:15.135</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209458495</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragon+slayer+jira&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 19:19:15.017</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 19:19:15.017</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206209421</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=safari&rls=en&q=dragon+slayer+jira&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 05:45:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 05:45:15.025</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207387771</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.br/search?hl=pt-BR&ei=4iEES6dzjoy4B-nRjKYI&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=instale+o+ip+de+dragon+souls&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 10:34:15.092</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 10:34:15.092</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">241567607</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">241600189</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-09 23:26:20.056</property>
<property name="versionComment"><![CDATA[Fixed the JIRA version]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294905</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327606</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 01:45:44.425</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">241567605</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Problem or Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">241600187</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:00:48.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-02-15 23:17:49.296</property>
<property name="versionComment"><![CDATA[Added a link to Atlassian support]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209568042</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?source=ig&hl=en&rlz=1G1GGLQ_ENUK336&=&q=bamboo+gadgets&btnG=Google+Search&meta=lr%3D&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 06:18:15.020</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 06:18:15.020</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204768007</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=atlassian+jira+edit+planning+board&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 22:17:15.051</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 22:17:15.051</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208062487</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-nz%3AIE-SearchBox&q=jira+dragons&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-28 00:11:15.019</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 00:11:15.019</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294888</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327589</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 01:37:36.724</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294887</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327588</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 00:43:58.915</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">241567626</id>
<property name="position">2</property>
<property name="title"><![CDATA[Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">241600208</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-08-02 21:06:15.109</property>
<property name="versionComment"><![CDATA[Removed link to obsolete "Beyond JIRA" page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215486284</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215518488</id>
</element>
</collection>
<property name="version">87</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:51:57.923</property>
<property name="versionComment"><![CDATA[Updated for Confluence 3.2, JIRA 4.1 and Crowd 2.0.3]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208008144</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=confluence+show+greenhopper+gadgets]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 10:12:15.251</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 10:12:15.251</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294882</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327583</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 01:08:23.033</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294881</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327582</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 01:31:27.398</property>
<property name="versionComment"><![CDATA[Contents of the atlassian-user.xml are very confusing]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206810998</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=Jira+Dragons&rls=com.microsoft:en-us:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 15:13:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 15:13:15.054</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209572853</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&channel=s&hl=en&source=hp&q=fisheye+add+new+repo&meta=&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 12:52:15.235</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 12:52:15.235</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">241567609</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">241600191</id>
</element>
</collection>
<property name="version">66</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:09:48.976</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037130</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Applications|http://www.atlassian.com]
* [Atlassian Developer Network|DEVNET:]
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* See [answers|https://answers.atlassian.com/tags/integration/] from the community.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Integrating your Atlassian Applications

Using our open API and scores of plugins, your Atlassian applications will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian applications. The [integration points|Integration Points] show the many different ways the applications work together and how you can make it happen.


h2. Integration Points

Here are a few of the ways our applications work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201294900</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201327601</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 21:06:10.115</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">209289284</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">172097551</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="user"><![CDATA[asaintprix@atlassian.com]]></property>
<property name="creationDate">2009-12-03 12:40:01.434</property>
<property name="lastModificationDate">2009-12-03 12:40:01.434</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685308</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=greenhopper+doc&rlz=1I7GGLJ_zh-CN&ie=UTF-8&oe=UTF-8&sourceid=ie7]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 21:01:15.034</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 21:01:15.034</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">241567622</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">241600204</id>
</element>
</collection>
<property name="version">67</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:51:14.122</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206213744</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/cse?cx=partner-pub-2070091971271392%3Ajpogut-tqkz&ie=UTF-8&q=dragon+recommends+installing+packages&sa=Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 11:21:15.134</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 11:21:15.134</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037120</id>
<property name="body"><![CDATA[This page summarises the [JIRA Portlet macro|DOC:JIRA Portlet Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Portlet macro|DOC:JIRA Portlet Macro] to display a portlet from your [JIRA|http://www.atlassian.com/software/jira/] site on a [Confluence|http://www.atlassian.com/software/confluence/] page. The information is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

+_Screenshot: JIRA Portlet displayed on a Confluence page_+
\\
\\
!DOC:_Flagship Image for JIRA Portlet Macro^JIRAPortletMacroFlagshipImage.png|border=1,bordercolor=gray!

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Portlet macro|DOC:JIRA Portlet Macro] allows you to display a [JIRA dashboard portlet|http://www.atlassian.com/software/jira/docs/latest/dashboard.html] on a [Confluence|http://www.atlassian.com/software/confluence/] page.

h2. Components

h6. Type of Integration

The JIRA Portlet macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Portlet macro|DOC:JIRA Portlet Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210113708</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=Agile+Gadget+jira+install&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 20:39:15.091</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 20:40:15.055</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037008</id>
<property name="body"><![CDATA[This page summarises the user and group management features offered by [Atlassian Crowd|http://www.atlassian.com/software/crowd] and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use [Crowd|http://www.atlassian.com/software/crowd] to manage users and groups simply and centrally. You can use Crowd's internal user directories or hook up your existing LDAP user bases, then link them to your web applications. Crowd provides an Administration Console for administrators as well as a Self-Service Console, allowing users to view their login permissions and to change their own passwords and user profiles.
{excerpt}

!CROWD:_Flagship Image^CrowdOverview.png!

h2. Full Description
{include:CROWD:_About Crowd|nopanel=true}

h2. Components

h6. Type of Integration

Crowd is an application security framework that handles authentication and authorisation for your web-based applications. You will need to download and install Crowd, and then configure it to hook up your applications and user directories.
* [More about Crowd|http://www.atlassian.com/software/crowd]
* [Download Crowd|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Crowd documentation|CROWD:]:
{children:page=CROWD:Crowd Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Crowd Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208471211</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.de/url?sa=t&source=web&ct=res&cd=2&ved=0CBcQFjAB&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FBamboo%2BBuilds%2Bin%2BEclipse&rct=j&q=bamboo+eclipse&ei=w3ETS72ALsmusAbHluGaDg&usg=AFQjCNGl5lO9uet7Wp-U_sSdTNDUBb7PvA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 01:25:15.138</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 01:27:15.250</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394539</id>
<property name="position">3</property>
<property name="title"><![CDATA[Guide to Installing an Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427154</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-05 18:33:16.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 20:08:31.978</property>
<property name="versionComment"><![CDATA[Tweaked the wording]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207457748</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.no/search?hl=no&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&q=how+to+write+integration+documentation&btnG=S%C3%B8k&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 02:54:15.313</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 02:54:15.313</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207383567</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=jira+dragon+slayer&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 04:55:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 04:55:15.054</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204771715</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/Jamie314/statuses/5586037644]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 05:30:15.130</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 05:30:15.130</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208479874</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 15:11:15.035</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 15:11:15.035</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208955817</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?rlz=1C1GGLS_enAU339AU339&sourceid=chrome&ie=UTF-8&q=atlassian+jira+bamboo+integration]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 23:27:15.152</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 23:27:15.152</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209555427</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 05:31:15.122</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 18:58:15.076</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207374850</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=37662&tstart=15]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 10:31:15.105</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 10:31:15.105</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206828818</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.se/search?q=jira+greenhopper+time+estimate&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:sv-SE:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 11:43:15.067</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 11:43:15.067</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394575</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427188</id>
</element>
</collection>
<property name="version">48</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:52:51.468</property>
<property name="versionComment"><![CDATA[Minor wording tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037044</id>
<property name="body"><![CDATA[This page summarises the [JIRA Issues macro|DOC:JIRA Issues Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Issues macro|DOC:JIRA Issues Macro] to display a list of [JIRA|http://www.atlassian.com/software/jira/] issues on a [Confluence|http://www.atlassian.com/software/confluence/] page. The list is shown in tabular format, and is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

+_Screenshot: JIRA issues displayed on a Confluence page_+
\\
\\
!DOC:_Flagship Image for JIRA Issues Macro^JIRAIssuesMacroFlagshipImage.png|border=1,bordercolor=gray!

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Issues macro|DOC:JIRA Issues Macro] allows you to display a list of issues from a JIRA site within a page in [Confluence|http://www.atlassian.com/software/confluence/].

In other words, if you have your own JIRA site, your Confluence page can show a dynamically-updated list of issues from your JIRA project. You can also show a list of issues from any JIRA site to which you and your readers have access.

h2. Components

h6. Type of Integration

The JIRA Issues macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Issues macro|DOC:JIRA Issues Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394581</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427195</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:44:10.613</property>
<property name="versionComment"><![CDATA[Fixed typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207999795</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=install+jira+with+external+database&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 17:07:15.211</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 17:07:15.211</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394583</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427197</id>
</element>
</collection>
<property name="version">73</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:49:34.531</property>
<property name="versionComment"><![CDATA[Minor wording tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394579</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427193</id>
</element>
</collection>
<property name="version">69</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:18:06.324</property>
<property name="versionComment"><![CDATA[Charlie's clothing]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241052491</id>
<property name="destinationPageTitle"><![CDATA[//jdbc.postgresql.org/download/postgresql-8.4-702.jdbc4.jar]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-22 23:18:04.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:18:04.583</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208948074</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&client=firefox-a&rls=org.mozilla:en-US:official&hs=JKq&ei=GnQWS57FEsSt4QaF44zgBg&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAwQBSgA&q=confluence+and+the+dragons&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 08:06:15.318</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 08:06:15.318</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208065729</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=safari&rls=en&q=atlassian+dragons+challenge&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 09:09:15.053</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 09:09:15.053</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208065731</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=29080&tstart=45]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 09:10:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 09:10:15.082</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206828774</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=dragons+atlassian&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 11:22:15.024</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 11:22:15.024</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241052489</id>
<property name="destinationPageTitle"><![CDATA[//www.enterprisedb.com/resources-community/pginst-guide]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-22 23:18:04.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:18:04.583</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241052490</id>
<property name="destinationPageTitle"><![CDATA[//jdbc.postgresql.org/download.html]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-22 23:18:04.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:18:04.583</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207361731</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.lt/search?hl=lt&client=firefox-a&rls=org.mozilla%3Aen-US%3Aunofficial&hs=fSP&q=atlassian+%22assigned+to+me%22+gadget+source&btnG=Ie%C5%A1koti&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 10:21:15.106</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 10:21:15.106</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241052488</id>
<property name="destinationPageTitle"><![CDATA[//www.postgresql.org/download/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-22 23:18:04.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:18:04.582</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209580785</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=Atlassian+Dragon+Slayer+t-shirt]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 06:09:15.115</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 06:09:15.115</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210135576</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.kr/search?complete=1&hl=ko&lr=&um=1&newwindow=1&q=slayers%20jiras&ndsp=18&ie=UTF-8&sa=N&tab=iw]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 16:33:15.177</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 16:33:15.177</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209576562</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=bamboo+gadgets&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 20:26:15.119</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 20:26:15.119</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473475</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506242</id>
</element>
</collection>
<property name="version">55</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 21:57:54.952</property>
<property name="versionComment"><![CDATA[Changed name of Linux home directory for consistency]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206828811</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ch/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 11:40:15.065</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 11:40:15.065</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473479</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506246</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 01:30:24.459</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204767834</id>
<property name="viewCount">822</property>
<property name="url"><![CDATA[http://www.atlassian.com/starter/all.jsp]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 21:43:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 15:13:15.064</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207357289</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?hl=de&q=atlassian+elo+integration&btnG=Suche&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 04:09:15.034</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 04:09:15.034</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209564070</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragon+slayer&ie=UTF-8&oe=UTF-8&hl=en&client=safari]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 20:56:15.157</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 20:56:15.157</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206803298</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.es/search?sourceid=chrome&ie=UTF-8&q=greenhopper+3+add+column]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 04:29:15.136</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 04:29:15.136</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208951385</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=agile+tab]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 12:22:15.044</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 12:22:15.044</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210131228</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 08:47:15.084</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 08:47:15.084</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473483</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506250</id>
</element>
</collection>
<property name="version">62</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 00:47:42.963</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207370544</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/cse?cx=002683415331144861350%3Atsq8didf9x0&q=Atlassian+Dragon&ie=utf-8&sa=Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 04:46:15.221</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 04:46:15.221</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473481</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506248</id>
</element>
</collection>
<property name="version">56</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 22:43:48.126</property>
<property name="versionComment"><![CDATA[Removed file name from end of path for consistency]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473482</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506249</id>
</element>
</collection>
<property name="version">53</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 21:08:42.165</property>
<property name="versionComment"><![CDATA[Added comment insisting on download of required version]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037004</id>
<property name="body"><![CDATA[This page summarises the single sign-on (SSO) feature provided by [Atlassian Crowd|http://www.atlassian.com/software/crowd] and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Using [Crowd|http://www.atlassian.com/software/crowd] for single sign-on (SSO), each person needs only one username and password to access all web applications. You only need to log in once, to Crowd or a Crowd-connected application. When you start another Crowd-connected application, you will be logged in automatically. Similarly, when you log out, you will be logged out of Crowd and the other applications at the same time.
{excerpt}

!CROWD:_Flagship Image^CrowdOverview.png!

h2. Full Description
{include:CROWD:_About Crowd|nopanel=true}

h2. Components

h6. Type of Integration

Crowd is an application security framework that handles authentication and authorisation for your web-based applications. You will need to download and install Crowd, and then configure it to hook up your applications and user directories.
* [More about Crowd|http://www.atlassian.com/software/crowd]
* [Download Crowd|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Crowd documentation|CROWD:]:
{children:page=CROWD:Crowd Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Crowd Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473487</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506254</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 23:15:00.880</property>
<property name="versionComment"><![CDATA[Fixed small typos]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473485</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506252</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 23:10:08.619</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707498</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674495</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:58:41.918</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707497</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674494</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:21:57.294</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707499</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674496</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 21:26:51.210</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">165119306</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">165086474</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-03 22:11:59.777</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206807030</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://tw.mg30.mail.yahoo.com/dc/launch?.gx=1&.rand=cp92kriovifd0]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 09:29:15.377</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 09:29:15.377</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707506</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674503</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 19:57:24.277</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">165119309</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">165086477</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-04 00:07:41.423</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962211</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994930</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 21:35:27.921</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707481</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674478</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:48:13.075</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962214</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994932</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 22:45:36.490</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707495</id>
<property name="position">12</property>
<property name="title"><![CDATA[Dragons Stage 11 - Add a Bamboo Gadget to JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674492</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:28:45.336</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207370179</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?client=firefox-a&rls=org.mozilla%3Aen-GB%3Aofficial&channel=s&hl=en&source=hp&q=bamboo+eclipse+integration&meta=&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 04:13:15.134</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 04:14:15.202</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207381617</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.facebook.com/home.php?ref=home]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 01:43:15.032</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 23:20:15.026</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">165119283</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">165086452</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:33:51.442</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206806994</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=atlassian+dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 09:28:15.132</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 20:40:15.028</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208142410</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208175179</id>
</element>
</collection>
<property name="version">60</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-19 11:53:20.374</property>
<property name="versionComment"><![CDATA[Fixed incorrect name of FishEye gadget in one occurrence]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707542</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674537</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 00:00:21.495</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208045158</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+integration+points&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 20:24:15.060</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 20:24:15.060</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206824359</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=fisheye+create+svn+repository&sourceid=ie7&rls=com.microsoft:en-us:IE-SearchBox&ie=&oe=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 20:03:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 20:03:15.031</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206802680</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.metacrawler.com/metacrawler/ws/results/Web/atlassian+slayer/1/417/TopNavigation/Relevance/iq=true/zoom=off/_iceUrlFlag=7?_IceUrl=true]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 03:35:15.158</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 03:35:15.158</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210115579</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?hl=nl&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=XRK&q=atlassian+dragonslayer&btnG=Zoeken&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 02:43:15.323</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 02:43:15.323</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207478782</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=en&rlz=1G1GGLQ_ENCA349&q=%2B%22web+applications%22+%2BSSO&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 17:12:15.127</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 17:15:15.097</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209575445</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=Yto&q=atlassian+bamboo+Build+failed+to+check+SVN+repository&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 17:03:15.112</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 17:03:15.112</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">241992187</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">241958925</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="user"><![CDATA[hipoo]]></property>
<property name="creationDate">2011-06-02 18:55:11.235</property>
<property name="lastModificationDate">2011-06-02 18:55:11.235</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208142449</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208175217</id>
</element>
</collection>
<property name="version">61</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-29 18:47:25.639</property>
<property name="versionComment"><![CDATA[Small clarification]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207482782</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.es/search?hl=es&client=firefox-a&rls=org.mozilla%3Aes-ES%3Aofficial&hs=yQV&q=jira+GreenHopper+todo+done&btnG=Buscar&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 05:07:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 05:07:15.078</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240190937</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240223525</id>
</element>
</collection>
<property name="version">97</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-29 00:49:43.854</property>
<property name="versionComment"><![CDATA[Updated the time estimate]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207458941</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.no/search?q=confluence+jiraissues&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:nb-NO:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 04:38:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 04:38:15.078</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209552305</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=sso]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 21:24:15.015</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 21:24:15.015</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208053867</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-GB%3Aofficial&hs=F48&q=atlassian+dragonslayer&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 17:38:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 17:38:15.078</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206811310</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://webmail.hitachi-cta.com/src/read_body.php?mailbox=INBOX&passed_id=1266&startMessage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 15:42:15.075</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 17:10:15.096</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208930964</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=atlassian+dragon+slayer&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 23:12:15.060</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 23:12:15.060</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207994506</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?q=here+be+dragons+jira&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 08:47:15.398</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 08:47:15.398</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579856</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 5 - Get JIRA and FishEye Talking]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579855</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=Ready to be blown away by FishEye and JIRA. Completed stage 4 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579857</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579852</id>
<property name="destinationPageTitle"><![CDATA[//bitbucket.org/atlassian_dragons/dragonslayers]]></property>
<property name="destinationSpaceKey"><![CDATA[{https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994477</id>
<property name="body"><![CDATA[{excerpt}During the [Atlassian Dragon Quest|Here Be Dragons], you added just one user to your integrated suite: *Charlie of Atlassian*. Very soon you will want to add more users, and in particular users who are not administrators. You also configured all the Atlassian applications to centralise their user management in JIRA. We recommend that you use JIRA for all user and group management.{excerpt}

Below is a summary of how to add your new users in JIRA. Details are in the [JIRA documentation|JIRA:Managing Users]. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to JIRA in your browser.
# Click '*Administration*' in the top navigation bar.
# Click '*User Browser*' in the left-hand panel.
# Click '*Add User*'.
# Enter the user information and click '*Create*'.
# Add the new user to the relevant groups, to give the user access to the Atlassian applications:
{noformat}
bamboo-admin
confluence-users
jira-developers
jira-users
{noformat}
{panel}

h5. RELATED TOPICS

[Dragons Stage 1 - Install JIRA]
[JIRA documentation|JIRA:Managing Users]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579851</id>
<property name="destinationPageTitle"><![CDATA[//tortoisehg.bitbucket.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579854</id>
<property name="destinationPageTitle"><![CDATA[Bitbucket 101]]></property>
<property name="destinationSpaceKey"><![CDATA[BITBUCKET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579853</id>
<property name="destinationPageTitle"><![CDATA[Mercurial]]></property>
<property name="destinationSpaceKey"><![CDATA[FISHEYE]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207486612</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.tr/search?q=jira+bamboo+integration&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:tr:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 02:44:15.100</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 02:44:15.100</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994479</id>
<property name="body"><![CDATA[{excerpt}If you experience problems with running Bamboo as a Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.{excerpt}

h5. RELATED TOPICS

[Dragons Stage 7 - Install Bamboo]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208058889</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.br/search?hl=pt-BR&q=generate+license+green+hopper+jira&meta=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 08:11:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 08:11:15.027</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210119439</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.at/search?hl=de&client=firefox-a&rls=org.mozilla:de:official&ei=LgchS7COF9D-_AbRocGrCg&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=atlassian+sdk+external+database&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 08:36:15.471</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 08:36:15.471</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207463283</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&q=Atlassian+dragon+for+war+distribution&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 10:20:15.168</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 10:20:15.168</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">221446731</id>
<property name="position"/><property name="title"><![CDATA[_MultipleAppsInSingleTomcatSupportFAQ]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">221512065</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-06-24 22:48:41.317</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-06-24 22:48:41.317</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">218279135</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209464016</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=confluence+way+of+dragon&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 08:40:15.312</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 08:40:15.312</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207986940</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAkQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FJIRA%2BBamboo%2BIntegration&rct=j&q=jira+bamboo+integration&ei=TwgLS_D0IInENs22uLoK&usg=AFQjCNFTFBKkczgbg8UAnafz-GXaah69Xg]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 16:11:15.049</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 16:11:15.049</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210119463</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=bamboo+eclipse+plugin&sourceid=navclient-ff&rlz=1B3GGGL_enUS250US251&ie=UTF-8&aq=0&oq=bamboo+eclipse+]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 08:38:15.220</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 08:38:15.220</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209571089</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/Appfire]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 10:10:15.278</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 10:10:15.278</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166527223</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in Eclipse]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166559968</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:12:39.000</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:15:04.439</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207465616</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=jira+fisheye+dashboard+gadget&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 13:49:15.099</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 13:49:15.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707363</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674360</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:54:37.187</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210137382</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=dragon+atlas+wiki&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 07:41:15.057</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 07:41:15.057</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208050211</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.at/search?hl=de&q=atlassian+dragon+slayer+tshirt&meta=&aq=null&oq=atlassian+dragon+slayer+tshir]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 07:32:15.143</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 07:32:15.143</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207459101</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.kr/search?hl=ko&rlz=1C1CHMB_koKR349KR349&newwindow=1&q=jira+bamboo+install&btnG=%EA%B2%80%EC%83%89&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 04:53:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 04:53:15.128</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474218</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506939</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 23:41:09.745</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208954984</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/url?q=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&sa=D&sntz=1&usg=AFrqEzebOOaVXbfLkORCexm02vQiD73xNA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 20:03:15.104</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 17:03:15.083</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707402</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 12 - Add a Bamboo Gadget to JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674400</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:53:23.705</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570898</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=install+jira+issues+macro&sourceid=navclient-ff&rlz=1B3GGGL_enUS273US273&ie=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 09:55:15.391</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 09:55:15.391</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852609</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in Eclipse]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918020</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:12:39.000</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-06-18 20:36:13.579</property>
<property name="versionComment"><![CDATA[Rebrand the IDE connectors]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707398</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674396</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:52:37.940</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474204</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506925</id>
</element>
</collection>
<property name="version">49</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 01:23:25.875</property>
<property name="versionComment"><![CDATA[Changed example URL for FishEye]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707395</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 7 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674393</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:52:01.233</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208010589</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 14:40:15.141</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 14:40:15.141</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707394</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 6 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674392</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:51:25.456</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208951168</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=integrating+bamboo+with+jira+studio&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 11:58:15.318</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 11:58:15.318</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474216</id>
<property name="position">3</property>
<property name="title"><![CDATA[Guide to Installing an Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506936</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-05 18:33:16.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:45:53.640</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707392</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674390</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:51:10.992</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707390</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674387</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:50:41.012</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852603</id>
<property name="position"/><property name="title"><![CDATA[Crucible Reviews in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918014</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:35:57.249</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-18 01:24:16.395</property>
<property name="versionComment"><![CDATA[Renaming the plugin]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707388</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674386</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:50:18.270</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474211</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506932</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 20:43:38.932</property>
<property name="versionComment"><![CDATA[Another small typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852605</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918016</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:23:01.209</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-18 01:20:29.554</property>
<property name="versionComment"><![CDATA[Renaming the plugin]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206830571</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=dragon+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 21:52:15.080</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 19:07:15.139</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852607</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issues in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918018</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:27:12.288</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-18 01:27:49.716</property>
<property name="versionComment"><![CDATA[Renaming the plugin]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852663</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918073</id>
</element>
</collection>
<property name="version">60</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 19:48:07.740</property>
<property name="versionComment"><![CDATA[Added anchors]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707441</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674439</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:04:32.868</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209560014</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=run+jira+setup+wizard+again&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 12:05:15.174</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 12:05:15.174</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707443</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674441</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:05:11.917</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210137353</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+to+the+dragon&ei=w5kjS-C_DcrklAfmyrGECg&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 07:26:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 07:26:15.021</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852662</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918072</id>
</element>
</collection>
<property name="version">53</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 19:57:56.853</property>
<property name="versionComment"><![CDATA[Fixed small typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208050178</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?hl=pl&q=jira+bamboo+integration&btnG=Szukaj&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 07:29:15.309</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 07:29:15.309</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852660</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918070</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 00:15:01.946</property>
<property name="versionComment"><![CDATA[Updated instructions on shutting down JIRA]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707448</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674446</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 21:27:59.272</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852658</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918068</id>
</element>
</collection>
<property name="version">52</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 20:27:22.890</property>
<property name="versionComment"><![CDATA[Fixed name of JiraOsUserAuthenticator to be commented out]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207454774</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.no/search?hl=no&source=hp&q=trouble+with+jira+and+crowd+admin+account&btnG=Google-s%C3%B8k&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 17:27:15.180</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 17:27:15.180</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707434</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674432</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 21:27:19.103</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206830648</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cn/search?hl=zh-CN&client=aff-icafemedia&hs=GRt&newwindow=1&q=jira+confluence+page&aq=0&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 22:13:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 22:13:15.031</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707437</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 6 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674435</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 21:28:16.240</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707438</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674436</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:03:45.857</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474200</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506921</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 21:09:54.639</property>
<property name="versionComment"><![CDATA[Added comment insisting on download of required version]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474169</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506891</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 00:43:19.128</property>
<property name="versionComment"><![CDATA[Now stage 8]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474176</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506898</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 20:57:57.347</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707432</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674430</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 21:28:37.600</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852638</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918048</id>
</element>
</collection>
<property name="version">51</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 19:34:55.494</property>
<property name="versionComment"><![CDATA[Added config to enable sub-tasks and unassigned issues, as required for FishEye]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474179</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506901</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 21:15:09.879</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474182</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506904</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 21:20:06.840</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210137322</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.nl/search?q=dragon+slayer+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:nl:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 07:11:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 07:11:15.025</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852689</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918098</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:54:29.862</property>
<property name="versionComment"><![CDATA[Removed the Clover and Crucible stages]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209470719</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=Atlassian+Dragon+Quest]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 11:54:15.026</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 11:54:15.026</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852690</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918099</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 23:15:04.703</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210110581</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.es/search?q=There+be+dragons+JIRA+BAMBOO&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-ES:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 13:39:15.131</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 13:39:15.131</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">205783744</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">205816509</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-08 00:04:03.116</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707468</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674466</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:27:37.872</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707466</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674464</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:43:07.161</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206820093</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.gr/search?hl=el&client=firefox-a&rls=org.mozilla:el:official&hs=WvJ&q=stage+8&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 10:14:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 10:14:15.128</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207366244</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://nicolinux.org/2009/10/kickass-agile-development-suite-by-atlassian/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 17:39:15.066</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 16:24:15.242</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209463910</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ru/search?q=integrate+jira+with+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ru:official&client=firefox]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 08:32:15.086</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 08:32:15.086</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">221450672</id>
<property name="position">2</property>
<property name="title"><![CDATA[Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">221515222</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-11 17:44:42.159</property>
<property name="versionComment"><![CDATA[Changed link to Dev Net]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707457</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674454</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:26:30.949</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208006322</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.br/search?q=bamboo+eclipse+plugin&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 08:02:15.250</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 08:02:15.250</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707462</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674460</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:27:10.241</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852675</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918084</id>
</element>
</collection>
<property name="version">54</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 21:11:05.899</property>
<property name="versionComment"><![CDATA[Added comment insisting on download of required version]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707451</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674449</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 21:29:19.076</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474147</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506869</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 19:59:44.264</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707449</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 6 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674447</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:05:11.909</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474145</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506868</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 01:46:16.985</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202474152</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Problem or Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506874</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:00:48.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-06 23:56:15.340</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707454</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add a Bamboo Gadget to JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674452</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 21:31:17.093</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285449</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[SETPAGEPERMISSIONS]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.213</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.213</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473864</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506608</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 01:24:25.548</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207362343</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ee/search?q=here+be+dragons+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 11:12:15.024</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 11:12:15.024</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285447</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEMAIL]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.213</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.213</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285448</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[COMMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.213</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.213</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208942410</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=bamboo+gadgets&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 19:59:15.132</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 19:59:15.132</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285445</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVECOMMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.212</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.212</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208942411</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=rss+feeds]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 20:00:15.024</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 20:00:15.024</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285446</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEBLOG]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.213</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.213</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285443</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEATTACHMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.212</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.212</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473857</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506601</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 00:42:55.621</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285444</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTPAGE]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.212</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.212</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207374220</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon&ei=7sUCS43xBpDT-Qabi6T7Dw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 09:49:15.328</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 09:49:15.328</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473856</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506600</id>
</element>
</collection>
<property name="version">48</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 00:38:50.088</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208931150</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-GB%3Aofficial&hs=4wg&q=setup+jira+to+use+postgres&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 00:01:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 00:01:15.025</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209563665</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=maven+%22Solaris+tar%22&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 19:22:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 19:22:15.070</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473854</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506598</id>
</element>
</collection>
<property name="version">64</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 17:04:25.016</property>
<property name="versionComment"><![CDATA[Hyperlinked the word 'Crucible']]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208942402</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=37828&tstart=0]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 19:58:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 15:13:15.093</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285451</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEPAGE]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.213</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.213</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285452</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EDITSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.214</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.214</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951023</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.918</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.918</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205684800</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=tools+you+will+need+to+slay+a+dragon&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 19:20:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 19:20:15.056</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951019</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[FECRUDEV]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951020</id>
<property name="destinationPageTitle"><![CDATA[Clover Development Hub]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951021</id>
<property name="destinationPageTitle"><![CDATA[Atlassian Connector for Eclipse]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951022</id>
<property name="destinationPageTitle"><![CDATA[Atlassian Connector for IntelliJ IDEA]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206815315</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3A*%3AIE-SearchBox&rlz=1I7SPDA_en&q=save+label+not+show+in+jira+gadget+config&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 03:00:15.159</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 03:00:15.159</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961964</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994684</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 21:32:14.134</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207486832</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&source=hp&q=bamboo+confluence+integration&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 03:08:15.087</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 03:08:15.087</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209563677</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=bamboo+jira+studio&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 19:25:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 19:25:15.062</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951010</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[DEVNET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207385444</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?source=ig&hl=nl&rlz=&q=bamboo+jira&meta=lr%3D&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 07:48:15.076</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 07:48:15.076</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852217</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917652</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:53:42.279</property>
<property name="versionComment"><![CDATA[Removed the Crucible stage]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">246481104</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">246513836</id>
</element>
</collection>
<property name="version">102</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:44:50.558</property>
<property name="versionComment"><![CDATA[Hg version compatibility]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207478537</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=gnH&q=fisheye+atlassian+integration&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 16:30:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 16:30:15.021</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852218</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917653</id>
</element>
</collection>
<property name="version">50</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:45:23.827</property>
<property name="versionComment"><![CDATA[Removed passwords]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207389304</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.de/search?client=firefox-a&rls=org.mozilla%3Ade%3Aofficial&channel=s&hl=de&source=hp&q=atlassian+slay+the+dragon&meta=&btnG=Google-Suche]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 12:54:15.195</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 12:50:15.253</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">246481100</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">246513832</id>
</element>
</collection>
<property name="version">101</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:41:45.706</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951018</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[CROWDDEV]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206830175</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://sn129w.snt129.mail.live.com/mail/InboxLight.aspx?FolderID=00000000-0000-0000-0000-000000000001&InboxSortAscending=False&InboxSortBy=Date&n=1862646826]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 20:08:15.077</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 20:08:15.077</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207994784</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://suche.gmx.ch/search/web/?mc=hp%40suche.suche%40home&origin=HP&su=8bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 09:07:15.477</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 09:07:15.477</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951017</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOODEV]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473822</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506567</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 23:16:10.794</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951016</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[GHDEV]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852225</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917660</id>
</element>
</collection>
<property name="version">59</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 00:22:08.146</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951015</id>
<property name="destinationPageTitle"><![CDATA[JIRA Development Hub]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207358956</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.lt/search?q=jira+gadget+get+base+url&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 06:53:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 06:53:15.070</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951014</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[CONFDEV]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951013</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[REST]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852232</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917666</id>
</element>
</collection>
<property name="version">51</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 19:54:34.821</property>
<property name="versionComment"><![CDATA[Fixed small typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951012</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[GADGETDEV]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">245951011</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[PLUGINFRAMEWORK]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-05 01:15:53.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-05 01:15:53.917</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">246481107</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">246513840</id>
</element>
</collection>
<property name="version">103</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:52:23.409</property>
<property name="versionComment"><![CDATA[RTE formatting issues]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852230</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917664</id>
</element>
</collection>
<property name="version">50</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:48:08.694</property>
<property name="versionComment"><![CDATA[Removed passwords]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210126189</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=fisheye+jira+password&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 22:16:15.051</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 22:16:15.051</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707789</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674752</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 02:17:43.132</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707791</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Problem or Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674754</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:00:48.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:00:48.917</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852233</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917667</id>
</element>
</collection>
<property name="version">52</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 19:56:36.957</property>
<property name="versionComment"><![CDATA[Confluence port is 8090]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473841</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 9 - Add Bamboo Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506586</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 23:55:37.183</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473838</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506583</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 00:12:26.575</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707797</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674760</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:45:03.424</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207482499</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.lk/url?sa=t&source=web&ct=res&cd=3&ved=0CA4QFjAC&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=%22here+be+dragons%22+linux&ei=EuwIS7S7Nc_5-Qb9gfHFDQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 01:46:15.022</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 01:46:15.022</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852242</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917676</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 19:32:34.067</property>
<property name="versionComment"><![CDATA[Moved JIRA config to stage 2, because we're configuring JIRA there already]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285442</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[CREATEATTACHMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:44:18.211</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:44:18.211</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">244285441</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[VIEWSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[farmas]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-19 20:43:49.671</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-19 20:43:49.671</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">221450841</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">221515389</id>
</element>
</collection>
<property name="version">74</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 20:46:04.442</property>
<property name="versionComment"><![CDATA[Updated JIRA version from 4.1.0 to 4.1.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473833</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506578</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 23:25:24.895</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207469836</id>
<property name="viewCount">7</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragon+slayer&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 01:40:15.118</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 15:14:15.210</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707795</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Problem or Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674758</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:00:48.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:48:11.176</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707804</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674767</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:52:47.694</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208058582</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.se/search?hl=sv&q=integration+documentation&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 07:40:15.285</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 07:40:15.285</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972472</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EDITBLOG]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.206</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.206</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972471</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[COMMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.206</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.206</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852249</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917683</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 20:08:44.192</property>
<property name="versionComment"><![CDATA[Step 1 - Standardised wording and formatting for Dragons docs]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972470</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEPAGE]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.202</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.202</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707807</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674770</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 23:16:26.028</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972469</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEMAIL]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.202</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.202</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972468</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[SETPAGEPERMISSIONS]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.201</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.201</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707805</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674768</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 23:17:50.275</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972467</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EDITSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.201</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.201</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707806</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674769</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:21:13.212</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707811</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674774</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:48:13.055</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206820187</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon&ei=i4f9SvD7IIyNnQf8-9WbCw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 10:22:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 10:22:15.070</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208935521</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ch/search?q=bamboo+eclipse+project+build&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 08:09:15.385</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 08:09:15.385</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707809</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674772</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 22:39:54.571</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707814</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674777</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 23:16:51.779</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707820</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674783</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 23:15:00.203</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473815</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506561</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 21:10:25.965</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707822</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674785</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:00:48.935</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207389348</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fi/search?rlz=1C1_____enFI351FI351&sourceid=chrome&ie=UTF-8&q=dragons+lair+dragon+quest]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 12:59:15.138</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 12:59:15.138</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707821</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674784</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:59:44.765</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972465</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVECOMMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.200</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.200</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972466</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[CREATEATTACHMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.200</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.200</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972463</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEATTACHMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.199</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.199</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208951056</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&channel=s&hl=en&source=hp&q=installation+directory+opt+jira+standalone&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 11:49:15.087</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 11:49:15.087</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972464</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEBLOG]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.199</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.199</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972461</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[VIEWSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:28.498</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:28.498</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">246972462</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTPAGE]]></property>
<property name="group"/><property name="userName"><![CDATA[doflynn]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-07-06 00:43:41.198</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-06 00:43:41.198</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707831</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674794</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:57:46.450</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">179438232</id>
<property name="position"/><property name="title"><![CDATA[JIRA Studio Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">179470865</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2009-01-04 23:19:52.538</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2009-01-04 23:19:52.538</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">202473762</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">202506509</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-24 20:50:58.815</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707834</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674797</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:58:14.063</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707835</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674798</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:14:49.210</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205688097</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragons&ei=H4z6Sqi0AtXajQfj1KyxBA&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 04:05:15.158</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 04:05:15.158</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210130540</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=confluece+jira+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 07:50:15.087</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 07:50:15.087</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707837</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674800</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:58:45.008</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209552041</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=dBo&q=dragon+slayer+atlassian&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 20:09:15.121</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 20:09:15.121</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707841</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674804</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:08:45.635</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852293</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917726</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 20:20:18.884</property>
<property name="versionComment"><![CDATA[Removed step mapping JIRA servers because the Dragons repository is mapped by default]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707844</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674807</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:08:45.641</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">229965828</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">242</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="user"><![CDATA[vosipov]]></property>
<property name="creationDate">2011-01-10 18:34:42.829</property>
<property name="lastModificationDate">2011-01-10 18:34:42.829</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208955433</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257320271]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 21:49:15.091</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 21:49:15.091</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852303</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917736</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 22:26:58.520</property>
<property name="versionComment"><![CDATA[Turned on FishEye's remote API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707849</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674812</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:03:23.967</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207359048</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/2009/10/integrating-multiple-atlassian-products-follow-our-guide-and.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 07:01:15.091</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 15:09:15.140</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852300</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917733</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 22:21:22.768</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852297</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917730</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 21:51:14.476</property>
<property name="versionComment"><![CDATA[Working through the section on configuringn the plugin in JIRA]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707855</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674818</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:07:00.638</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">203511565</id>
<property name="destinationPageTitle"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-05 22:07:01.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:07:01.917</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207987180</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aru%3Aofficial&hs=KNN&q=GreenHopper+for+jira+3&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 16:40:15.103</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 16:40:15.103</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392148</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424851</id>
</element>
</collection>
<property name="version">62</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:38:21.884</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">203511564</id>
<property name="destinationPageTitle"><![CDATA[Here be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-05 22:07:01.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:07:01.917</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852322</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917755</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 22:56:30.595</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392166</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Create JIRA Project]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424868</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:00:44.967</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:00:44.967</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207385600</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&q=greenhopper+agile&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 08:02:15.120</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 08:02:15.120</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852319</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917752</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 22:28:25.854</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392181</id>
<property name="position"/><property name="title"><![CDATA[_Dragons PostgreSQL]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424883</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:40:12.574</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 01:40:12.574</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392178</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424880</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 18:50:52.214</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392175</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424877</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:38:13.592</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 01:38:13.592</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207469748</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ee/search?hl=et&client=firefox-a&rlz=1R1GGGL_en-GB___EE352&q=integrating+jira+bamboo&btnG=Otsi&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 01:24:15.096</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 01:24:15.096</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852355</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917788</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 00:11:24.742</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392200</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424902</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 23:04:33.623</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852354</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917787</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 00:10:39.606</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852353</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917786</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 23:00:09.255</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209571155</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.il/search?hl=en&rlz=1C1GGLS_enIL291IL315&q=integrate+jira+in+build&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 10:15:15.551</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 10:15:15.551</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392198</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424900</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 00:19:24.962</property>
<property name="versionComment"><![CDATA[Removed spurious SVN link]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392196</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424898</id>
</element>
</collection>
<property name="version">51</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:55:13.048</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205295677</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon%27s+lair]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 15:55:15.155</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 15:55:15.155</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392194</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424896</id>
</element>
</collection>
<property name="version">67</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:53:28.658</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392190</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424892</id>
</element>
</collection>
<property name="version">59</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:49:21.374</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392188</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424890</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:40:37.443</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392186</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424888</id>
</element>
</collection>
<property name="version">63</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:41:11.341</property>
<property name="versionComment"><![CDATA[Attached dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584145</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392216</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424916</id>
</element>
</collection>
<property name="version">60</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:09:16.323</property>
<property name="versionComment"><![CDATA[Colour and dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208950894</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragonslayer&rls=com.microsoft:en-us:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 11:31:15.179</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 11:31:15.179</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584143</id>
<property name="destinationPageTitle"><![CDATA[Clover-for-Maven 2 and 3 User's Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392214</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424914</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:07:31.304</property>
<property name="versionComment"><![CDATA[Colour and dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584144</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/clover/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584141</id>
<property name="destinationPageTitle"><![CDATA[Clover-for-Ant User's Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584142</id>
<property name="destinationPageTitle"><![CDATA[Clover-for-Maven 2 and 3 User's Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392211</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424911</id>
</element>
</collection>
<property name="version">65</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:34:28.725</property>
<property name="versionComment"><![CDATA[Added a note that they shouldn't use the Windows Installer]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584139</id>
<property name="destinationPageTitle"><![CDATA[Clover-for-IDEA User's Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584140</id>
<property name="destinationPageTitle"><![CDATA[Clover-for-Eclipse User's Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392209</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424909</id>
</element>
</collection>
<property name="version">64</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:05:03.292</property>
<property name="versionComment"><![CDATA[Colour]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392202</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424904</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 23:12:19.744</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584124</id>
<property name="destinationPageTitle"><![CDATA[Using Bamboo in the IntelliJ Connector]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961888</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994612</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 23:25:11.196</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584123</id>
<property name="destinationPageTitle"><![CDATA[Installing the IntelliJ Connector]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584126</id>
<property name="destinationPageTitle"><![CDATA[Using JIRA in the IntelliJ Connector]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392228</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424928</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:16:01.712</property>
<property name="versionComment"><![CDATA[Colour and dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584125</id>
<property name="destinationPageTitle"><![CDATA[Using Bamboo in the IntelliJ Connector]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584128</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/clover/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584127</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/ideconnector/intellij.jsp]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584130</id>
<property name="destinationPageTitle"><![CDATA[About Test Optimization]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392231</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424931</id>
</element>
</collection>
<property name="version">66</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:36:01.409</property>
<property name="versionComment"><![CDATA[Removed wording about later versions]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584129</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/clover/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584132</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392218</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424918</id>
</element>
</collection>
<property name="version">68</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:11:10.931</property>
<property name="versionComment"><![CDATA[Colour and dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584131</id>
<property name="destinationPageTitle"><![CDATA[//www.eclipse.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206802835</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 03:50:15.118</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 10:16:15.123</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584134</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8085]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392219</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424919</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:14:57.870</property>
<property name="versionComment"><![CDATA[Colour and dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584133</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[CLOVER]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210130639</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?hl=pl&q=bamboo+eclipse&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 07:58:15.325</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 07:58:15.325</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584136</id>
<property name="destinationPageTitle"><![CDATA[Generating Reports across Multiple Plans]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584135</id>
<property name="destinationPageTitle"><![CDATA[Viewing the Clover Code-Coverage for a Build Result]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584138</id>
<property name="destinationPageTitle"><![CDATA['Clover Code Coverage' Report]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584137</id>
<property name="destinationPageTitle"><![CDATA['Clover Lines of Code' Report]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.100</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.100</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207482652</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/ellenfeaheny/customwarefolks]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 03:42:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 03:42:15.054</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207389472</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-us&q=download+svn+fish+eye+browser&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 13:10:15.215</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 13:10:15.215</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392245</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424945</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:16:42.738</property>
<property name="versionComment"><![CDATA[Added dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584113</id>
<property name="destinationPageTitle"><![CDATA[//www.eclipse.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584114</id>
<property name="destinationPageTitle"><![CDATA[//www.jetbrains.com/idea/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584115</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/ideconnector/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392234</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424934</id>
</element>
</collection>
<property name="version">61</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:41:38.195</property>
<property name="versionComment"><![CDATA[Removed wording about later versions]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584116</id>
<property name="destinationPageTitle"><![CDATA[Installing the Eclipse Connector]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392233</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424933</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:38:32.863</property>
<property name="versionComment"><![CDATA[Removed wording about later versions]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392236</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424936</id>
</element>
</collection>
<property name="version">52</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:12:38.494</property>
<property name="versionComment"><![CDATA[Colour and dragon banner]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584117</id>
<property name="destinationPageTitle"><![CDATA[//eclipse.org/downloads/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392235</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424935</id>
</element>
</collection>
<property name="version">69</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:42:23.711</property>
<property name="versionComment"><![CDATA[Removed wording about later versions]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584118</id>
<property name="destinationPageTitle"><![CDATA[Using Bamboo in the Eclipse Connector]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584119</id>
<property name="destinationPageTitle"><![CDATA[Using Bamboo in the Eclipse Connector]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584120</id>
<property name="destinationPageTitle"><![CDATA[Configuring your JIRA Options in Eclipse]]></property>
<property name="destinationSpaceKey"><![CDATA[IDEPLUGIN]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584121</id>
<property name="destinationPageTitle"><![CDATA[Mylyn]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRAEXT]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">242584122</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/ideconnector/eclipse.jsp]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[mstudman]]></property>
<property name="creationDate">2011-06-09 03:37:23.099</property>
<property name="lastModifierName"><![CDATA[mstudman]]></property>
<property name="lastModificationDate">2011-06-09 03:37:23.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392239</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424939</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:43:05.210</property>
<property name="versionComment"><![CDATA[Removed wording about later versions]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961918</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994639</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 19:37:43.274</property>
<property name="versionComment"><![CDATA[Verified the Crucible steps to enable Crucible]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209455536</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+bamboo+integration&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 13:02:15.399</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 13:02:15.399</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210115257</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cn/search?hl=zh-CN&newwindow=1&q=jira+FishEye+URL&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 02:08:15.041</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 02:08:15.041</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961920</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994641</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 20:13:11.748</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961915</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994636</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 18:57:14.294</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210137554</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/Search.jspa?query=dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 09:00:15.980</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 09:00:15.980</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961925</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994646</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 20:52:43.091</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961927</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994648</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 21:01:18.760</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208054280</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragonslayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 20:15:15.068</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 18:00:15.058</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207478447</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=installing+Greenhopper+with+JIRA+4.0&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 16:15:15.095</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 16:15:15.095</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392274</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424973</id>
</element>
</collection>
<property name="version">63</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:14:18.866</property>
<property name="versionComment"><![CDATA[Adapted instructions to put Charlie badge onto Confluence Home page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207469644</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.za/search?hl=en&source=hp&q=how+to+delete+the+hash+sign+in+access+data+base&btnG=Google+Search&meta=&rlz=1R2SKPB_en&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 01:10:15.048</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 01:10:15.048</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961929</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994650</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 21:11:23.641</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208961942</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208994662</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 21:20:49.577</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392271</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424970</id>
</element>
</collection>
<property name="version">62</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 23:01:46.984</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208002679</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=jira+general+configuration+file+in+database+&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 02:31:15.089</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 02:31:15.089</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215483210</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215515878</id>
</element>
</collection>
<property name="version">82</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-28 19:23:26.368</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210137771</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.it/search?sourceid=navclient&hl=it&ie=UTF-8&rlz=1T4RNWE_itIT307IT307&q=bamboo+gadgets]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 10:37:15.049</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 10:37:15.049</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027141</id>
<property name="fileName"><![CDATA[FishEyeCogIcon.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-12-01 19:45:20.979</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 19:45:20.979</property>
<property name="fileSize">524</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027143</id>
<property name="fileName"><![CDATA[CrucibleReview.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-12-01 20:58:10.592</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 20:58:10.592</property>
<property name="fileSize">48744</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168003922</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168069171</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-21 23:56:43.331</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215483201</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215515871</id>
</element>
</collection>
<property name="version">81</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:14:27.699</property>
<property name="versionComment"><![CDATA[Changed tweet url from trim to bitly]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105414</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208943139</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=JIRA+4+enable+gadgets&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 23:00:15.076</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 23:00:15.076</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105418</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105417</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105416</id>
<property name="destinationPageTitle"><![CDATA[Integrating Bamboo with JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105415</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/bamboo/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027097</id>
<property name="fileName"><![CDATA[JIRADashboardStage6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:32:09.864</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:32:09.864</property>
<property name="fileSize">96299</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">203622144</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">155549712</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="user"><![CDATA[dbutler@atlassian.com]]></property>
<property name="creationDate">2009-10-09 11:31:34.790</property>
<property name="lastModificationDate">2009-10-09 11:31:34.791</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027100</id>
<property name="fileName"><![CDATA[JIRADashboardStage8.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:05:15.955</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:05:15.955</property>
<property name="fileSize">111870</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">226885765</id>
<property name="body"><![CDATA[{excerpt}4.3.4{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">226787473</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207987471</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAkQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FJIRA%2BBamboo%2BIntegration&rct=j&q=jira+bamboo+integration&ei=1hgLS76zBY3ANdbBrb4K&usg=AFQjCNFTFBKkczgbg8UAnafz-GXaah69Xg]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 17:21:15.087</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 17:21:15.087</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210137797</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?hl=de&q=fisheyes+license+installation&btnG=Suche&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 10:45:15.136</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 10:45:15.136</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209575909</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=Here+Be+Dragons+Atlassian&ei=O-weS866IIfYngfdxrTWDQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 18:16:15.173</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 18:16:15.173</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209463608</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=wiki+jira+portlet&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 08:05:15.452</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 08:05:15.452</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205294753</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=log+on+to+hundreds+of+apps+with+a+single+username&btnG=Search&hl=en&rlz=1B2GGIC_enUS216US217&sa=2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 14:27:15.101</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 14:27:15.101</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208045720</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&source=hp&q=confluence+indexing+unix+process&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 22:52:15.057</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 22:52:15.057</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674149</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper {excerpt-include:_DragonsVersionNumber-GH|nopanel=true} for JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.

In this step you will install the GreenHopper plugin into JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Click '*Plugins*' in the '*System*' section of the 'Administration' menu.
# The plugin management page will appear. Click the '*Install*' tab.
# Enter {{greenhopper}} into the search box and click '*Search*'.
# The GreenHopper plugin will appear in the list of plugins. Click the '*GreenHopper*' plugin name.
# The plugin details will appear. Click '*Install Now*'.
# When the plugin has been successfully installed, shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} on Windows, or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} on UNIX.)
# Start your JIRA server again, and log in to JIRA as {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Set up your GreenHopper license key:
#* Click '*License Details*' in the '*GreenHopper*' section of the 'Administration' menu.
#* The 'GreenHopper License Information' screen will appear. Paste your GreenHopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get a '*GreenHopper for JIRA 4: Evaluation*' license key.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

_{+}Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA{+}_
\\
\\  !GreenHopperPlanningBoardDefault-v6.png|thumbnail!\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to update your issues via the GreenHopper tabs or via the standard JIRA interface. For this exercise you will do your updates via GreenHopper.

First you will create two 'sprints', also known as 'milestones'. A sprint is a short period of time, two weeks for example, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints. Finally you will add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Add*' button above the version cards, near the top right of the planning board.
# The 'Add Version' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
#* Leave the default values for the other fields.
#* Click '*Create and Close*'.
# Follow the above steps to add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the sprint box for sprint '*2.0.S1*'.
# Within the sprint box click the gear icon (top right) and select '*Toggle visibility*', or double click the sprint title bar, to expand the box.
# The '*Parent*' is currently set to 'none'. Click '*Parent*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Parent*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next you will add a new issue, also known as a card. Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{charlie}}
# Click '*Create and Close*', to create the issue. 
# You will see your planning board again. It currently shows no cards. Click the version number dropdown near the top left of the screen (currently showing '2.0.s2') and select '*Unscheduled*' to see all the cards.
# Click the card for issue {color:blue}{*}DRA-1{*}{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}{*}DRA-2{*}{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty, because it is currently showing cards for version 'Unscheduled'. Click the version number '*2.0.S1*' at the top of the version 2.0.S1 box on the right. You should now see your two cards '{color:blue}{*}DRA-1{*}{color}' and '{color:blue}{*}DRA-2{*}{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The value in the version number dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can double click the title bar of each version box, to minimise or expand the box.
# Mark one of your issues as complete:
#* Click the down arrow next to 'Planning Board' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'To Do' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*Done*' column.
#* The '*Transitioning Issue*' screen will appear. Select '*Close Issue*' and click '*Update*'.
#* The '*Close Issue*' screen will appear. Click '*Close Issue*'.
{panel}

_{+}Screenshot 2 (click to enlarge): The GreenHopper task board for version 2.0{+}_
\\
\\  !GreenHopperTaskBoard-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Use the Scrum Template for your Project and Add a Story

GreenHopper includes a project template for projects using the Scrum methodology. The template adds custom fields, such as ranking fields and story points, to your project. It also allows you to create stories, epics and technical tasks. In this step you will apply the Scrum template to your project and create a story.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go back to your planning board, click the '*Tools*' menu and select '*Configuration*'.
# The project configuration page will appear. Click the '*General*' tab. 
# Select '*Scrum*' from the '*Project Template*' dropdown menu.
# Click '*Change template*' on the confirmation window.
# Next you will create a new story. Go back to your planning board and click '*New Card*'. Enter the following values:
#* Card type: {{Story}}
#* Priority: {{Major}}
#* Summary: {{As a dragon slayer I would like to wield an extremely big sword.}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Business Value: {{10}}
#* Assignee: {{charlie}}
#* Story Points: {{10}}
# Click '*Create and Close*'. You will see your planning board again. If your new story does not appear on the board, click the version number '*2.0*' at the top of the version 2.0 box on the right so that the board shows all cards for version 2.0.
{panel}

_{+}Screenshot 3 (click to enlarge): The GreenHopper planning board with story{+}_
\\
\\  !GreenHopperPlanningBoardStory-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*GreenHopper Agile Gadget*' and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*GreenHopper Agile Gadget*':
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legend*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*GreenHopper Agile Gadget*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}{*}green{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile Gadget'
* The 'Assigned to Me' gadget
* The 'Projects' gadget

_{+}Screenshot 4 (click to enlarge): JIRA dashboard with 3 gadgets{+}_
\\
\\  !JIRADashboard3Gadgets-v5.png|thumbnail!\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}

h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=GreenHopper for agile dragon slayers. I've completed stage 2 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install Confluence|Dragons Stage 3 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674146</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. JIRA will also act as a central user repository for all your Atlassian applications.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Install Java

{include:_Dragons JDK|nopanel=true}

h2. Step 2. Install your PostgreSQL Database Server

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}

h2. Step 4. Install JIRA

Requirements: *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
(!) Please use the JIRA version specified in this documentation. If the download centre shows a JIRA version later than {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}, click '*downloads archive*' and get JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* On the '*JIRA Home*' tab, tell JIRA where to put its JIRA Home directory (the data directory). For example: {{C:\data\jira-home}}
#* On the '*Database*' tab, configure the database connection:
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 3 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 3 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 3 [above|#database].
#** *Schema* -- Leave this at the default setting, i.e. '*public*'.
#** *Pool Size* -- Leave this at the default setting.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# When you have a working connection, click '*Save*' and then '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Please use the JIRA version specified in this documentation. If the download centre shows a JIRA version later than {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}, click '*downloads archive*' and get JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}/bin/config.sh}}
#* On the '*JIRA Home*' tab, tell JIRA where to put its JIRA Home directory (the data directory). For example: {{/home/<user>/jira-home/}} 
#* On the '*Database*' tab, configure the database connection:
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 3 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 3 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 3 [above|#database].
#** *Schema* -- Leave this at the default setting, i.e. '*public*'.
#** *Pool Size* -- Leave this at the default setting.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# When you have a working connection, click '*Save*' and then '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 5. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Application Title -- Accept the default application title.
#* Mode -- Accept the default mode.
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{[http://coopers:8080]}}. Or specify a website address, such as {{[http://www.foobar.com:8080]}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user. Enter the following information:
#** Username: {color:blue}{{{}{*}charlie{*}{}}}{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
{panel}

_{+}Screenshot 2: The JIRA Dashboard when you first log in{+}_
\\
\\ !JIRADashboardOnLogin-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:project}
h2. Step 6. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory\!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge01.png!
{column}
{column}

h5. Don your Belt and Boots, and Move to the Next Stage 

* *Tweet?* [Tweet|http://twitter.com/?status=JIRA is hot, the dragon is not! I've completed stage 1 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 2 - Install GreenHopper into JIRA|Dragons Stage 2 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027201</id>
<property name="fileName"><![CDATA[ConfluenceExternalGadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 16:26:24.297</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 16:26:24.297</property>
<property name="fileSize">58529</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618767</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207983582</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=connect+fisheye+to+a+remote+svn+repository&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 10:28:15.073</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 10:28:15.073</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027203</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpaceV2.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-29 17:08:13.806</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-29 17:08:13.806</property>
<property name="fileSize">70841</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618774</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204767294</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.my/search?q=enter+fisheye+url&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 19:56:15.370</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 19:56:15.370</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391380</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424126</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 18:13:25.678</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391359</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424106</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 01:55:28.856</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207389113</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=Jpp&q=here+be+dragons+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 12:34:15.156</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 12:34:15.156</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209562865</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragon%27s+lair+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 17:10:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 17:10:15.078</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391368</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424115</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 18:08:27.426</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674139</id>
<property name="body"><![CDATA[{color:#6e2e28}*Problems?*{color} Please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on, see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].
{color:green}*Victory?*{color} Please continue.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209471091</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&q=greenhopper+jira+sprint&btnG=Search&meta=&cts=1260045954219&aq=0&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 14:46:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 14:46:15.054</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168003980</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168069228</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-17 22:53:12.070</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206802235</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?source=ig&hl=en&rlz=&q=atlassian+dragon&btnG=Google+Search&meta=lr%3D&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 02:54:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 02:54:15.082</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209455909</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=change+bamboo+configuration+%22Build+Working+Directory%3A%22&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 13:42:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 13:42:15.021</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105419</id>
<property name="destinationPageTitle"><![CDATA[JIRA Bamboo Plugin]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRAEXT]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105420</id>
<property name="destinationPageTitle"><![CDATA[Integrating Bamboo with JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674176</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb --owner bamuser --encoding utf8 bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
(!) Please use the Bamboo version specified in this documentation. If the download centre shows a Bamboo version later than {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}, click '*downloads archive*' and get Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Run the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}\-standalone-windows-x32.exe}} or {{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x64.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Because Bamboo will be running on the same machine as JIRA, you need to ensure that the URL paths are different for Bamboo and JIRA. Change the default Bamboo path as follows:
#* Edit the {{wrapper.conf}} file in your {{\{BAMBOO_INSTALL\}\conf}} folder. 
#* Find the following line:
{code}
wrapper.app.parameter.4=/
{code}
and replace it with the following line:
{code}
wrapper.app.parameter.4=/bamboo
{code}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\BambooConsole.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
(!) Please use the Bamboo version specified in this documentation. If the download centre shows a Bamboo version later than {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}, click '*downloads archive*' and get Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Because Bamboo will be running on the same machine as JIRA, you need to ensure that the URL paths are different for Bamboo and JIRA. Change the default Bamboo path as follows:
#* Edit the {{wrapper.conf}} file in your {{\{BAMBOO_INSTALL\}/conf/}} folder. 
#* Find the following line:
{code}
wrapper.app.parameter.4=/
{code}
and replace it with the following line:
{code}
wrapper.app.parameter.4=/bamboo
{code}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. Bamboo calls them 'executables'. See the [Bamboo documentation|BAMBOO:Configuring a new Executable]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/bamboo].
# The Bamboo Setup Wizard will start, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*General Configuration*' information as follows:
#* Name: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085/bamboo}}. Or specify a website address, such as {{http://www.foobar.com:8085/bamboo}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Artifacts Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to the Bamboo database created in step 1 [above|#database]:
#* Connection Type: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password that you will use for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) The Bamboo home page will appear.
# Now you will check that your Bamboo configuration includes your default executable and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Executables*' in the left-hand menu.
# The 'Executables' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools like Script, MSBuild or Bash. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your executable is not included, click '*Add an executable as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Executable}}.
#* Type: {{Maven 2.x}}.
#* Executable Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install JIRA] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*add a JDK as a server capability*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Java\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:jira}
h2. Step 4. Hook Bamboo up to JIRA for User Management 

When you have completed this step, you will be able to manage your Bamboo users in JIRA and have the same usernames and passwords in JIRA and Bamboo. First you will define the Bamboo application in JIRA. Then you will adjust your Bamboo installation to delegate user management to JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{{nolink}http://www.foobar.com:8080{nolink}}}.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# Click '*Other Applications*' in the left-hand navigation panel (under 'Users, Groups & Roles').
# The 'Configure Other Applications' screen will appear, showing FishEye and Confluence already configured. Click '*Add Application*'.
# The 'Add Application' screen will appear. Enter the following information:
#* Application Name: {{bamboo}}.
#* Password -- Enter a password that Bamboo will use to access JIRA, and enter it again to confirm it.
#* IP Addresses -- On a new line, add the IP address or addresses of your Bamboo server. For example: {{192.168.10.12}}.
# Click '*Save*'. 
# Leave JIRA up and running, but shut down Bamboo. (On Windows, open your Bamboo console window and press *Ctrl+C* then enter '*y*' next to the 'Terminate batch job' prompt. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following 'Crowd integration client' JAR from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Download a new 'Crowd integration client' JAR from the [download site|https://maven.atlassian.com/content/groups/public/com/atlassian/crowd/crowd-integration-client/2.3.0-m4/crowd-integration-client-2.3.0-m4.jar].
# Copy the downloaded JAR to your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* Check that {{application.name}} is set to the correct value: {{bamboo}}.
#* Change the {{application.password}} -- Enter the password that Bamboo will use to access JIRA. This must be the same password as you entered when defining Bamboo to JIRA [above|#jira].
#* Change the {{application.login.url}} to point to JIRA's URL: {{{nl}http://localhost:8080/{nl}}}.
#* Change the {{crowd.server.url}} to point to JIRA's URL: {{{nl}http://localhost:8080/{nl}}}.
#* Add a new line containing the following text: {{bamboo.crowd.cache.minutes 60}}.
Your {{crowd.properties}} file should look like this, except that the password will be your password:
{code:xml}
application.name                        bamboo
application.password                    bamboo
application.login.url                   http://localhost:8080/

crowd.server.url                        http://localhost:8080/

session.isauthenticated                 session.isauthenticated
session.tokenkey                        session.tokenkey
session.validationinterval              0
session.lastvalidation                  session.lastvalidation

bamboo.crowd.cache.minutes              60
{code}
#* Save the file.
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. 
#* Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
#* Save the file.
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/log4j.properties}} file.
#* Add the following line:
{code:xml}
log4j.category.com.atlassian.crowd.integration.atlassianuser.UserGroupCache=INFO
{code}
#* Save the file.
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{http://www.foobar.com:8085/bamboo}}.
# Log in using Charlie's password in JIRA.
(/) You are now authenticating via JIRA!
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will configure an application link between JIRA and Bamboo, so that you can later add Bamboo gadgets to JIRA. You will also set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA site in your browser.
# Click '*Administration*' in JIRA's top navigation bar.
# Click '*Application Links*' in the left-hand panel, under 'System'.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your Bamboo site (e.g. {{[http://coopers:8085/bamboo]}} or {{[http://www.foobar.com:8085/bamboo]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to Bamboo' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your Bamboo site.
#* Password -- Enter Charlie's password in JIRA (because you are managing your users in JIRA and are therefore using Charlie's user profile in JIRA).
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your JIRA site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will define your Bamboo server to JIRA. Click '*Bamboo Servers*' in the 'Global Settings' section of the left-hand navigation panel.
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085/bamboo}} or {{http://www.foobar.com:8085/bamboo}}.
#* User name: {{charlie}} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in JIRA.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the 'Communication' section of the left-hand panel.
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {{charlie}} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in JIRA.
# Issue Key: {{DRA-1}} -- This is the JIRA issue key for the issue that you created in [Dragons stage 1|Dragons Stage 1 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA username and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a Bitbucket repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Details' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Plan Name: {{Main}}.
#* Plan Key: {{MAIN}}.
#* Plan Description: {{Dragon slaying plan}}.
# Enter the following information in the 'Source Repository' section:
#* Source Control: {{Bitbucket}}.
#* Username: {{atlassian_dragons}}.
#* Password -- Not required for our sample repository.
#* Repository -- Select the '*URL*' option.
#* Repository URL: {{[https://bitbucket.org/atlassian_dragons/dragonslayers]}}.
# Leave the rest of the fields in the 'Source Repository' and 'Build Strategy' sections at their default values.
# Click '*Configure Tasks*'.
# The 'Configure Tasks' screen will appear. Click '*Add Task*'.
# The 'Task Types' screen will appear. Find and select '*Maven 2.x*'.
# The 'Maven 2.x Configuration' panel will appear. Enter the following information:
#* Task Description: {{Maven build}}.
#* Executable: {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Save*'. You have now defined one task in your plan.
# Select '*Yes please*' under '*Enable this Plan*'.
# Click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# The 'Plan Summary' will appear, showing the 'Main' plan in the 'Dragons' project. Click '*\#1*' under 'Recent History' to open the build result summary for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v6.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v6.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* Click '*Comment*' on the Bamboo build result summary.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 5 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful-v6.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab on the build result screen, to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues-v6.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild-v6.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. Unfortunately, you cannot reproduce this now because our sample repository is read-only.

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/?status=This dragon is a big teddy bear. I've completed stage 7 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory|Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105421</id>
<property name="destinationPageTitle"><![CDATA[Integrating Bamboo with JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[BAMBOO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027160</id>
<property name="fileName"><![CDATA[CloverInBamboo.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-12-01 22:19:43.832</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 22:19:43.832</property>
<property name="fileSize">99549</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">168105422</id>
<property name="destinationPageTitle"><![CDATA[JIRA Bamboo Plugin]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRAEXT]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-09-12 00:52:51.694</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-12 00:52:51.694</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674183</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08-v6.png! 
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard. Then you can claim your T-shirt.

*Time estimate:* This stage will take approximately *5 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Add Two Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Enter 'bamboo' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '{{charlie}}'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*', then '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Recent Changesets' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardFinal-v6.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08-v6.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/?status=Victory! Dragons hold no fear for me. %40atlassian where's my T-shirt%3F %23AtlassianDragons http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674163</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Configure your JIRA Settings in FishEye/Crucible 

During the FishEye setup wizard, you connected JIRA to FishEye/Crucible. Now you will update that application link and enable subtasks for Crucible. This is required for creating JIRA issues from Crucible reviews. You will also enable the remote API in FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/fisheye}}.
# Click the downward-pointing arrow next to your username ('charlie') then click '*Administration*' in the dropdown menu.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear, showing a connection to your JIRA server. Click '*JIRA Settings*' next to the JIRA application link.
# The 'Update JIRA Server' screen will appear. Enter the following information:
#* Select the '*Include in Activity Streams*' checkbox.
#* Click the '*Test*' button in the 'Subtask Settings' section. The options 'Subtask Settings' section will change, allowing you to complete the following fields.
#* Select the '*Subtask Type*': {{Technical task}}.
#* Enter the '*Subtask Resolution Action ID*': {{2}}.
#* Leave the '*Subtask Resolution*' at its default value: {{Cannot Reproduce}}.
#* Select '*Allow Unassigned*': {{Yes}}. 
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Application link to JIRA in FishEye{+}_ 

!FishEyeCrucibleAppLinks-v6.png|thumbnail!

h2. Step 2. Link your FishEye and JIRA Projects and Subscribe JIRA to FishEye's Gadgets

In this step you will link your FishEye 'Dragons' repository to your JIRA 'Dragons' project via a project link. This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/fisheye}}.
# Click the downward-pointing arrow next to your username ('charlie') then click '*Administration*' in the dropdown menu.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and select '*Application Links*' from the dropdown menu.
# Click '*Add Link*' and select your JIRA server from the dropdown menu.
# Click '*Create*'. Your FishEye repository is now linked to your JIRA project.
# Now you will make your FishEye gadgets available in JIRA, so that users will be able to add any FishEye gadget to their JIRA dashboard. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060/fisheye]}} or {{[http://www.foobar.com:8060/fisheye]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The JIRA FishEye configuration screen will appear. Click '*Edit Primary Configuration*' at the bottom of the screen.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link. If prompted, log in to FishEye as {{charlie}}.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses of your FishEye/Crucible site, separated by commas. For example: 127.0.0.1, 172.20.5.95.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left-hand menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses of your JIRA site, one per line. For example: 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths, one per line: 
{noformat}
/secure/CreateSubTaskIssueDetails.jspa
/browse/
/rest
/plugins/servlet/applinks/whoami
/plugins/servlet/streams
/rpc/soap
/sr/jira.issueviews:searchrequest
/secure/RunPortlet
{noformat}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab-v6.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab-v6.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number or the repository name ('Dragons').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'recent' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Leave all the other fields at their default values and click '*Save*'.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Recent Changesets' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardFishEye-v6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=The dragon is swift and strong but so am I. Completed stage 5 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and Crucible Talking|Dragons Stage 6 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674160</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new data directory's location, such as {{C:\data\fisheyecrucible}}.)
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new data directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new data directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. 
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new data directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Crucible

In this step you will do the initial setup of your FishEye/Crucible site. As part of this process, you will connect FishEye and Crucible to JIRA, so that you can manage all your users via JIRA and share information between JIRA and FishEye/Crucible.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/fisheye}}. Alternatively, type the host name or IP address instead of {{localhost}}. 
# The FishEye/Crucible setup wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you do not have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. If prompted, ensure that you choose to *include Crucible as part of this evaluation*.
# The '*Connect to JIRA'* step will appear. Enter the following information:
#* JIRA Base URL -- Enter the web address of your JIRA server, e.g. {{http://www.foobar.com:8080}}.
#* Admin Username: {{charlie}}. 
This is {color:blue}*Charlie's*{color} username in JIRA.
#* Admin Password -- Enter Charlie's password for JIRA.
# Leave the other fields (the 'advanced options') at their default values and click the '*Connect to JIRA*' button.
# The 'Set administrator password' screen will appear. Enter an administration password and then enter it again to confirm it.
This is the password you can use to access your FishEye/Crucible administration screens. Charlie will also have permission to access the administration screens.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
You can use the administration password that you defined in the previous step, or you can use {color:blue}*Charlie's*{color} login. We recommend that you log in as Charlie:
## Click '*Log In*' in the top menu bar.
## Enter the username '{{charlie}}' and Charlie's password in JIRA.
## Click the dropdown arrow on the right of Charlie's name in the top menu bar, and select '*Administration*'.
# Now you will connect FishEye/Crucible to your database. In the left-hand 'Admin' menu, click '*Database*' under 'Systems Settings'.
# Click '*Edit*' and enter the following details:
#* Type -- Select '*PostgreSQL*'.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}} -- Note that this value is different from the default value.
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- Enter the password you defined in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. 
If the test fails:
#* Verify that you have the PostgreSQL JDBC driver JAR file in the FishEye data directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. 
#* Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. 
#* Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. Wait a while and try again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Configuring FishEye].

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:bitbucket}
h2. Step 5. Connect FishEye to Bitbucket

For this integration exercise we provide a Bitbucket repository that you can connect to your FishEye 'Dragons' repository. Bitbucket is a code hosting site for the [Mercurial|http://mercurial.selenic.com/] distributed version control system (DVCS). We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Mercurial|http://mercurial.selenic.com/], [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. 

For this integration exercise, follow the steps below to install Mercurial and then connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Get [Mercurial|http://mercurial.selenic.com/] and [Python|http://www.python.org/]. Make sure that you get a version of *Mercurial between 1.5 and 1.8.x*. FishEye is not yet compatible with Mercurial 1.9. 
#* If you are on Windows you can download and install [TortoiseHg|http://tortoisehg.bitbucket.org/]. This bundles Python and Mercurial.)
#* Note: For some UNIX distributions, the default download will include Mercurial 1.4.3. You will need 1.5 - 1.8.x.
# Add or edit your Mercurial config file at {{C:\Documents and Settings\MY_NAME\mercurial.ini}} (Windows XP) or  {{C:\MY_NAME\mercurial.ini}} (Windows 7) or {{~/.hgrc}} (UNIX). The file should contain your preferred editor and your username. If you do not already have a username, you can use {{atlassian_dragons}}:
{noformat}
[ui]
; editor used to enter commit logs, etc.  Most text editors will work.
editor = notepad
username = atlassian_dragons
{noformat}
# Go to your FishEye administration screen in your browser.
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add*' button. The first screen of the 'New Repository' wizard will appear. 
# Enter the following information:
#* Repository Type: {{Mercurial}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* Repository Location: {{https://bitbucket.org/atlassian_dragons/dragonslayers}}.
#* Authentication Style: {{No authentication}}.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Bitbucket is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Mercurial]. You can learn about Bitbucket and Mercurial in the [Bitbucket documentation|BITBUCKET:Bitbucket 101].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the 'Source' view. Click '*Tools*' then '*RSS Feed*'. You can get an RSS feed on the dashboard too.

(/) Click the changeset number ({{0:922fd9308885}}) in the activity stream to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Ready to be blown away by FishEye and JIRA. Completed stage 4 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Get JIRA and FishEye Talking|Dragons Stage 5 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209571633</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&ei=XYQeS6eAEoj8sgPC68nzCQ&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CA0QBSgA&q=greenhopper+system+requirements&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 10:53:15.336</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 10:53:15.336</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207455171</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?rlz=1C1GGLS_enAU352AU352&sourceid=chrome&ie=UTF-8&q=migrate+crowd+fisheye]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 18:30:15.049</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 18:30:15.049</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204770526</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/url?sa=t&source=web&ct=res&cd=2&ved=0CBMQFjAB&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FBamboo%2BBuilds%2Bin%2BEclipse&rct=j&q=bamboo+eclipse&ei=Yjf5SomZM9iOsAb9hvyhCg&usg=AFQjCNGl5lO9uet7Wp-U_sSdTNDUBb7PvA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 03:51:15.083</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 03:51:15.083</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674169</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png!
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will configure JIRA to manage your Confluence users, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb --owner confuser --encoding utf8 confluence
exit
{noformat}
{panel}
_+Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL+_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
(!) Please use the Confluence version specified in this documentation. If the download centre shows a Confluence version later than {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}, click '*downloads archive*' and get Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the ports and URL paths are different for Confluence and JIRA. By default, both applications use port 8080. Change the default Confluence port and path as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
{code:language=xml}
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8090" minProcessors="5"
                   maxProcessors="75"
                   enableLookups="false" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000"
                   useURIValidationHack="false" URIEncoding="UTF-8"/>
{code}
#* Change the value of the {{path}} attribute in the {{Context}} element to {{/confluence}}:
{code:language=xml}
<Context path="/confluence" docBase="../confluence" debug="0" reloadable="false" useHttpOnly="true">
{code}
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Please use the Confluence version specified in this documentation. If the download centre shows a Confluence version later than {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}, click '*downloads archive*' and get Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the ports and URL paths are different for Confluence and JIRA. By default, both applications use port 8080. Change the default Confluence port and path as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
{code:language=xml}
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8090" minProcessors="5"
                   maxProcessors="75"
                   enableLookups="false" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000"
                   useURIValidationHack="false" URIEncoding="UTF-8"/>
{code}
#* Change the value of the {{path}} attribute in the {{Context}} element to {{/confluence}}:
{code:language=xml}
<Context path="/confluence" docBase="../confluence" debug="0" reloadable="false" useHttpOnly="true">
{code}
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090/confluence|http://localhost:8090/confluence].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# If the 'What's new in Confluence' popup window appears, select '*Don't show again*' and click '*Close*'. 
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090/confluence]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090/confluence]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to JIRA for User Management

When you have finished setting up your Atlassian application suite, JIRA will hold all your users and groups and you will have a single username across all your Atlassian applications. In this step you will configure Confluence to use JIRA for centralised user management. To do that, you will define the Confluence application in JIRA, and define the JIRA user directory in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If JIRA is not already running, start it up by running {{\{JIRA_INSTALL\}\bin\startup.bat}} (Windows) or {{\{JIRA_INSTALL\}/bin/startup.bat}} (UNIX).
# {anchor:DefineConfluence}Define the Confluence application to JIRA:
#* Go to your JIRA URL in your browser, e.g. {nolink}[http://www.foobar.com:8080]{nolink}.
#* Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
#* Click '*Administration*' in the top navigation bar.
#* Click '*Other Applications*' in the 'Users, Groups & Roles' section of the left-hand panel.
#* Click '*Add Application*'.
#* The 'Add Application' screen will appear. Enter the following information:
#** Application name: {{confluence}}
#** Password -- Enter a password that Confluence will use to access JIRA.
#** IP Addresses -- On a new line, add the IP address or addresses of your Confluence server. For example: {{192.168.10.12}}.
Also add this IP address: {{127.0.1.1}}
#* Click '*Save*'.
# Set up the JIRA user directory in Confluence:
#* Go to your Confluence URL in your browser, e.g. {nolink}[http://www.foobar.com:8090/confluence]{nolink}.
#* If you are not already on the Confluence administration screen, open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* Click '*User Directories*' under 'Security' in the left-hand panel.
#* Click '*Add Directory*, select type '*Atlassian JIRA*' and click '*Next*'.
#* The 'Configure Atlassian JIRA Server' screen will appear. Enter the following information:
#** Name: Accept the default value, {{JIRA Server}}.
#** Server URL -- Enter the web address of your JIRA server, e.g. {{http://www.foobar.com:8080}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence to JIRA in the steps [above|#DefineConfluence].
#** Application Password -- Enter the password that you entered when defining Confluence to JIRA in the steps [above|#DefineConfluence].
#** JIRA Server Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the JIRA user directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*JIRA Server*', so that the JIRA directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in JIRA.
(/) You are now authenticating via JIRA!
{panel}

_+Screenshot 3 (click to enlarge): Confluence user directories+_
\\
\\  
!ConfluenceUserDirectories.png|thumbnail!
\\
\\

Full details are in the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090/confluence].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090/confluence]}} or {{[http://www.foobar.com:8090/confluence]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 4 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge03.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'. Select '*Heading 2*'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click the '*Search*' button.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
_Note:_ The new issue will appear immediately under the heading 'Reporting a new issue'. You may need to click the refresh icon at the bottom of the table of issues, to see the new issue appear in the table. This is because the issues shown in the table are cached.
{panel}

_{+}Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge03.png!
{column}
{column}

h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Confluence is on fire! I've completed stage 3 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install FishEye and Crucible|Dragons Stage 4 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204770480</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/url?sa=t&source=web&ct=res&cd=2&ved=0CBAQFjAB&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FBamboo%2BBuilds%2Bin%2BEclipse&rct=j&q=eclipse+bamboo&ei=Wjb5SpbpNI6UsAbnscmfCg&usg=AFQjCNGl5lO9uet7Wp-U_sSdTNDUBb7PvA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 03:46:15.110</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 03:46:15.110</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391446</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424186</id>
</element>
</collection>
<property name="version">57</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 19:47:02.150</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">201719871</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardDefault.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:13:36.067</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:13:36.067</property>
<property name="fileSize">39237</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206816241</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fi/search?hl=fi&client=firefox-a&rls=org.mozilla%3Afi%3Aofficial&hs=G2Y&q=jira+java+driver+name+for+postgre&btnG=Haku&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 04:29:15.178</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 04:29:15.178</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">203622048</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">3260</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="user"><![CDATA[laura.kolker]]></property>
<property name="creationDate">2009-10-06 11:46:20.434</property>
<property name="lastModificationDate">2009-10-06 11:46:20.434</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">221447424</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">221512532</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-27 16:28:01.058</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206823972</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 17:47:15.049</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 17:47:15.049</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424846</id>
<property name="body"><![CDATA[Attached to this page are commonly-used images in the Atlassian Dragon Quest pages.

You can insert the images directly into a page --- there's no need to attach them to the page itself. Here's an example of how to do that:

{code}
!_Images^MyImage.png!
{code}

h3. Attachments
{attachments} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208011104</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.dworld.pl/post/show/JIRA_za_10_dolarow]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 15:56:15.186</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 08:44:15.406</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209551844</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+here+be+dragonslayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 19:07:15.039</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 19:07:15.039</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391421</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424163</id>
</element>
</collection>
<property name="version">56</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 19:21:55.523</property>
<property name="versionComment"><![CDATA[Excerpted out the JIRA setup section]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">200869355</id>
<property name="fileName"><![CDATA[PGAdminConfluenceDB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:24:38.263</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:24:38.263</property>
<property name="fileSize">78828</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206816219</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.at/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 04:27:15.197</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 14:10:15.161</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659217</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[SETPAGEPERMISSIONS]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391410</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424153</id>
</element>
</collection>
<property name="version">55</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 18:52:10.977</property>
<property name="versionComment"><![CDATA[Excerpted out the PostgreSQL section]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659215</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391409</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Partial JIRA Setup]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424152</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 19:19:19.447</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 19:19:19.447</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391407</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659216</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEMAIL]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659213</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EDITBLOG]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659214</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTPAGE]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209560594</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://delicious.com/wahrheit/?page=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 13:06:15.247</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 13:06:15.247</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659211</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[CREATEATTACHMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659212</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEATTACHMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659209</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVECOMMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206538346</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en-us&q=how+to+disable+FishEye+Plugin+in+jira&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 16:03:15.096</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 16:03:15.096</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659210</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEBLOG]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206823986</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-us%3AIE-SearchBox&q=will+fisheye+create+a+svn+repository&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 17:49:15.079</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 17:49:15.079</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659207</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[SETSPACEPERMISSIONS]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208045812</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=29080&tstart=45]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 23:14:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 23:14:15.082</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659208</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEPAGE]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206823984</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=jira+studio+bamboo&product=&resource=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 17:48:15.145</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 17:48:15.145</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659205</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[COMMENT]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659206</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EDITSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209586501</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209619125</id>
</element>
</collection>
<property name="version">79</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:34:27.714</property>
<property name="versionComment"><![CDATA[Added note about Windows Installer]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674117</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, FishEye, Crucible or Bamboo, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM.
* No other applications running -- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions about a platform that is not supported, please see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install JIRA] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Bitbucket repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, which Bamboo calls an executable. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install JIRA] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659204</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[VIEWSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[smaddox]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.072</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.072</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209551869</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+bamboo++sample&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 19:15:15.124</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 19:15:15.124</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391396</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424140</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 18:22:16.509</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659233</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[SETPAGEPERMISSIONS]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.440</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.440</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659232</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEPAGE]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.440</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.440</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659231</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EDITBLOG]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.440</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.440</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659230</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTSPACE]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.439</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.439</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659229</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEATTACHMENT]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.439</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.439</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659228</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[CREATEATTACHMENT]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.439</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.439</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207389134</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=eclipse+and+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 12:36:15.236</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 12:36:15.236</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659226</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTPAGE]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.439</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.439</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659225</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEMAIL]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.438</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.438</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659224</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[SETSPACEPERMISSIONS]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.438</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.438</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659223</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVEBLOG]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.438</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.438</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659222</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[COMMENT]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.438</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.438</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659221</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EDITSPACE]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.438</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.438</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659220</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[REMOVECOMMENT]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:12:29.438</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:12:29.438</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208063176</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ch/search?q=jira++source+tab&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-28 06:59:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 06:59:15.021</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391390</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424135</id>
</element>
</collection>
<property name="version">54</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 23:12:43.553</property>
<property name="versionComment"><![CDATA[Fixed small typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">164659219</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[VIEWSPACE]]></property>
<property name="group"><![CDATA[documentation]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:11:50.953</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:11:50.953</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168004093</id>
<property name="position"/><property name="title"><![CDATA[Crucible Reviews in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168069341</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:35:57.249</property>
<property name="lastModifierName"><![CDATA[jgorycki]]></property>
<property name="lastModificationDate">2008-09-03 05:04:27.092</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528830</id>
<property name="body"><![CDATA[{pagetreesearch:rootPage=Integration Documentation}
{pagetree:root=Integration Documentation}
[Index|http://confluence.atlassian.com/labels/listlabels-alphaview.action?key=ATLAS]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496136</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205294832</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-US%3Aofficial&hs=OYI&q=bamboo+issues+with+windows+7&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 14:35:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 14:35:15.078</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209467340</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.es/search?q=atlassian+here+be+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-ES:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 14:19:15.050</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 14:19:15.050</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391511</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424244</id>
</element>
</collection>
<property name="version">60</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:01:47.601</property>
<property name="versionComment"><![CDATA[Excerpted out the project section]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528827</id>
<property name="body"><![CDATA[The children of this page contain information which is *included in other pages*. This is a library of re-usable information chunks.

If you want to change any of these pages, be aware that:
* Changing page names is problematic --- you will need to change all the {{include}} and {{excerpt-include}} macros manually.
* The content is used in many places --- make sure your change is generic enough to fit the contexts in which the pages are used.

{children}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168004089</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168069337</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:23:01.209</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:11:47.931</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528822</id>
<property name="body"><![CDATA[{section}
{column:width=50%}
{panel:title=Guide to Integrating your Applications|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Follow the [Atlassian Dragon Quest|Guide to Installing an Atlassian Integrated Suite] to set up and integrate your suite of Atlassian applications.
{panel}
{column}
{column:width=50%}
{panel:title=Links and Resources|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Want to know more? Take a look at our [Links and Resources], or follow the links in the table of contents on the left.
{panel}
{column}
{section}

{panel:title=Atlassian Integration Points|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:page=Integration Points|depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391504</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424238</id>
</element>
</collection>
<property name="version">59</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 20:55:02.059</property>
<property name="versionComment"><![CDATA[Excerpted out the Crowd hookup step]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210130434</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.sk/search?q=eclipse+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 07:40:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 07:40:15.128</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168004097</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issues in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168069345</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:27:12.288</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:23:40.672</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209567074</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.de/search?hl=de&q=move++fisheye+server&btnG=Suche&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 04:33:15.238</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 04:33:15.238</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391496</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424230</id>
</element>
</collection>
<property name="version">58</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 20:12:30.783</property>
<property name="versionComment"><![CDATA[Added location of start_crowd for UNIX]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210111112</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=greenhopper+jira+install&cts=1260390596905&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 14:30:15.247</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 14:30:15.247</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207987325</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=atlassian++bamboo++prompt+for+build+variables&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 16:59:15.126</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 16:59:15.126</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207378503</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&ei=3h8DS_zzDYbDngebh8lp&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=atlassian+dragon%27s+lair&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 16:13:15.091</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 16:13:15.091</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209562719</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=aoYdS9zYLYy2MOiftKoK&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 16:50:15.092</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 16:50:15.092</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">216432739</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">216465473</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:04:41.074</property>
<property name="versionComment"><![CDATA[Updated for JIRA 4.1 etc]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207389219</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+gadget+base+url+site%3A.atlassian.com&btnG=Haku&hl=fi&safe=off&client=safari&rls=en&sa=2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 12:44:15.247</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 12:44:15.247</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">201719899</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardv20.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-15 23:03:07.965</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:03:07.965</property>
<property name="fileSize">58353</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">201719908</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardv20.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-15 22:37:27.251</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 22:37:27.251</property>
<property name="fileSize">58334</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719899</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206538380</id>
<property name="viewCount">17</property>
<property name="url"><![CDATA[http://twitter.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 16:07:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 15:19:15.082</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065536</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098269</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 00:10:16.888</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">201719913</id>
<property name="fileName"><![CDATA[PGAdminConfluenceDB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[ggaskell]]></property>
<property name="creationDate">2009-09-10 02:08:16.971</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-10 02:08:16.971</property>
<property name="fileSize">51231</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">200869355</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">201719912</id>
<property name="fileName"><![CDATA[JIRADashboard3Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:13:35.984</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:13:35.984</property>
<property name="fileSize">45917</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065534</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098267</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 00:09:40.581</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228065533</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228098266</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-06 00:11:14.434</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207358097</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=atlassian+jira+license+staging&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 05:24:15.090</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 05:24:15.090</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208931604</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cn/search?client=aff-avalanche&channel=searchbox&tbo=d&ie=gb2312&oe=UTF-8&hl=zh-CN&q=GREENHOPPER+LICENCE+INFORMATION&aq=f]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 01:29:15.146</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 01:29:15.146</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168004087</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in Eclipse]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168069335</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:12:39.000</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-18 23:41:40.485</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207978693</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&safe=active&q=bamboo+confluence+integration+instructions&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 03:42:15.093</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 03:47:15.146</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207369387</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ru/search?q=JIRA++setup+estimates&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ru-RU:official&client=firefox]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 03:10:15.542</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 03:10:15.542</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208947258</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://tools/wiki/pages/editpage.action?pageId=1638539]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 07:06:15.217</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 07:06:15.217</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708287</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675224</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 23:13:23.107</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962493</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995193</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 23:27:54.075</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206212711</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+forum&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 10:04:15.167</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 10:04:15.167</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206811991</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 17:00:15.121</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 23:43:15.070</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708293</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675229</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-07 01:17:01.959</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852737</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918146</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 23:16:15.860</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207987778</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+bamboo+gadget&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 18:11:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 18:11:15.040</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962492</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995192</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 23:07:02.549</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206811998</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=here+be+dragons+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 17:01:15.093</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 17:01:15.093</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203395360</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427908</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 22:59:41.415</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207470348</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=atlassian+dragons&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 02:44:15.098</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 02:44:15.098</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210111547</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragons&ei=jhIgS4SwK8aH4QbNmbnmCg&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 15:12:15.059</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 15:12:15.059</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209575663</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=8uIeS5mxG4n-NceemaEK&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 17:37:15.135</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 17:37:15.135</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391570</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424299</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:07:13.662</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206812007</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+slayer&ei=zZP8SoLwN4vIsAPJqJCCBw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 17:02:15.099</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 17:02:15.099</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206812004</id>
<property name="viewCount">6</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=dragons+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 17:02:15.071</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 17:42:15.057</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962471</id>
<property name="position"/><property name="title"><![CDATA[Running Bamboo in a Console Window]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995171</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:22:19.918</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 23:22:19.918</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208477237</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragons&rls=com.microsoft:*:IE-Address&ie=UTF-8&oe=UTF-8&sourceid=ie7&rlz=1I7TSHB_en]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 10:43:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 10:43:15.054</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391516</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424249</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 01:33:29.694</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962470</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995170</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 23:24:03.069</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852699</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918108</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 00:11:39.120</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203395407</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203427953</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-07 21:55:55.203</property>
<property name="versionComment"><![CDATA[Updated developer doc links]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206812014</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=dAj&q=here+be+dragons+atlassian&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 17:03:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 17:03:15.029</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708260</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Problem or Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675197</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:00:48.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:49:44.549</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962457</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995157</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-01 22:56:56.322</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852719</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918128</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 00:37:28.382</property>
<property name="versionComment"><![CDATA[Added trusted apps setup in both FE and JIRA]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208011003</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.nz/search?rlz=1C1GGLS_en___NZ305&sourceid=chrome&ie=UTF-8&q=bamboo+eclipse+plugin]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 15:41:15.063</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 15:41:15.063</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208059176</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.no/search?hl=no&q=jira+greenhopper+log+estimated+time+left&btnG=S%C3%B8k&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 08:40:15.123</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 08:40:15.123</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852715</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918124</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 23:37:55.451</property>
<property name="versionComment"><![CDATA[Added some bold highlighting of text]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852721</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201918130</id>
</element>
</collection>
<property name="version">61</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 21:11:48.546</property>
<property name="versionComment"><![CDATA[Added comment insisting on download of required version]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962475</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995175</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 21:53:15.356</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391615</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424343</id>
</element>
</collection>
<property name="version">61</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:05:00.233</property>
<property name="versionComment"><![CDATA[Excerpted out the victory step]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208045991</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=19C&q=bamboo+atlassian+documentation+studio&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 23:56:15.165</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 23:56:15.165</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208053636</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=atlassian+dragon+quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 16:30:15.034</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 16:30:15.034</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233343365</id>
<property name="fileName"><![CDATA[atlassian.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-02-27 17:42:09.514</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-02-27 17:42:09.514</property>
<property name="fileSize">8900</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962554</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995254</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 23:28:22.573</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208950591</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.nl/search?q=jira+project+source+tab&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 11:02:15.051</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 11:02:15.051</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208931758</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragons+quest&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 01:54:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 10:12:15.044</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391619</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424347</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:16:46.794</property>
<property name="versionComment"><![CDATA[Set the time estimate]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">208962559</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">208995259</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 23:43:19.768</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207987700</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257323302]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 17:57:15.107</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 16:21:15.251</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391628</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424356</id>
</element>
</collection>
<property name="version">58</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:17:35.077</property>
<property name="versionComment"><![CDATA[Set the time estimate]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207373705</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=sv&q=%2Bconfigure+%2Bjira+%2Blogin+%2Blinux&btnG=S%C3%B6k&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 09:13:15.125</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 09:13:15.125</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207358537</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://almatters.wordpress.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 06:13:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 09:57:15.333</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206812065</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=sv3&q=dragons+atlassian&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 17:09:15.072</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 17:09:15.072</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391636</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424364</id>
</element>
</collection>
<property name="version">50</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 23:04:11.874</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391633</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424361</id>
</element>
</collection>
<property name="version">66</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:18:27.637</property>
<property name="versionComment"><![CDATA[Set the time estimate]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391584</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424313</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 22:53:35.888</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207486401</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+here+be+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 02:17:15.139</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 02:17:15.139</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209584066</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=here+be+dragons+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 10:22:15.459</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 10:22:15.459</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391586</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424315</id>
</element>
</collection>
<property name="version">65</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 01:22:28.861</property>
<property name="versionComment"><![CDATA[Changed example URL for FishEye]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391585</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424314</id>
</element>
</collection>
<property name="version">57</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 23:11:35.803</property>
<property name="versionComment"><![CDATA[Fixed small typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391588</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424317</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 23:53:20.183</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391587</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424316</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 20:08:08.320</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391601</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424330</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:20:33.809</property>
<property name="versionComment"><![CDATA[Set the time estimate]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391603</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424332</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:33:27.817</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet and added the Twitter search]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209563052</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&safe=off&client=safari&rls=en&q=atlassian+dragon+quest&aq=1&oq=atlassian+dragon&aqi=g2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 17:38:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 17:38:15.082</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579831</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crucible]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209584101</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:de:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 10:25:15.039</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 10:25:15.039</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579832</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391673</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424401</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 23:11:09.707</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet and added the Twitter search]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209467179</id>
<property name="viewCount">6</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragon+quest&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 13:59:15.100</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 05:08:15.114</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579833</id>
<property name="destinationPageTitle"><![CDATA[//www.pgadmin.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579834</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209463701</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=pl&ei=vBgZS5D2HoSQsAa6hsmQBg&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=user+group+management&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 08:13:15.238</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 08:13:15.238</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391677</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424405</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 23:34:07.386</property>
<property name="versionComment"><![CDATA[Made the forum link more prominent]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579829</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579830</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/fisheye]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579840</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209471553</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=Dragonslayer&product=&resource=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 18:45:15.032</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 18:45:15.032</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579839</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8060/fisheye]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391698</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424426</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 23:01:17.656</property>
<property name="versionComment"><![CDATA[URL-encoded the tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579842</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209566862</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.by/search?hl=be&q=atlassian+quest+inurl%3Aatlassian.com&btnG=%D0%A8%D1%83%D0%BA%D0%B0%D1%86%D1%8C&meta=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 04:19:15.354</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 04:19:15.354</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579841</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207378158</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragon+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 15:40:15.150</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 15:40:15.150</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233343444</id>
<property name="fileName"><![CDATA[JIRADashboardOnLogin-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-01 18:30:29.694</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-01 18:30:29.694</property>
<property name="fileSize">46172</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579836</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209575536</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=Kd4eS_zNKYvSNdO9pZkK&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 17:16:15.235</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 17:16:15.235</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579835</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207373884</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/2009/10/integrating-multiple-atlassian-products-follow-our-guide-and.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 09:24:15.182</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 00:44:15.075</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579838</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579837</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579848</id>
<property name="destinationPageTitle"><![CDATA[Adding a Repository]]></property>
<property name="destinationSpaceKey"><![CDATA[FISHEYE]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579847</id>
<property name="destinationPageTitle"><![CDATA[//subversion.tigris.org]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579850</id>
<property name="destinationPageTitle"><![CDATA[//www.python.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207983270</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=atlassian+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 10:06:15.342</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 12:55:15.045</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579849</id>
<property name="destinationPageTitle"><![CDATA[//mercurial.selenic.com/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579844</id>
<property name="destinationPageTitle"><![CDATA[Configuring FishEye]]></property>
<property name="destinationSpaceKey"><![CDATA[FISHEYE]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579843</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.062</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209463719</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&ei=6xUZS7uCIoOHlAeIitzuAg&sa=X&oi=spellfullpage&resnum=0&ct=result&cd=2&ved=0CAcQvwUoAQ&&q=installing+greenhopper+in+linux&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 08:15:15.118</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 08:15:15.118</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579846</id>
<property name="destinationPageTitle"><![CDATA[//mercurial.selenic.com/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708176</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675116</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-06 18:32:02.317</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">246579845</id>
<property name="destinationPageTitle"><![CDATA[//mercurial.selenic.com/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[doflynn]]></property>
<property name="creationDate">2011-07-06 00:56:33.063</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-07-06 00:56:33.063</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391649</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424377</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:51:45.594</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391650</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424378</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 19:10:29.447</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200708134</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200675075</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-03 22:57:06.900</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207362719</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1CHMA_enUS326US326&sourceid=chrome&ie=UTF-8&q=jira+studio+bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 11:45:15.203</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 11:45:15.203</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391643</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424371</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:19:25.067</property>
<property name="versionComment"><![CDATA[Set the time estimate]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391646</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424374</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 21:25:10.982</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">210763811</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">210796575</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-10 22:31:38.404</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208931811</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ee/search?hl=et&client=firefox-a&rlz=1R1GGGL_en-GB___EE352&q=bamboo++atlassian+administrator+create&btnG=Otsi&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 02:01:15.052</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 02:01:15.052</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203391668</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424396</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 22:34:06.358</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138180</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/13yo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 13:36:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 13:36:15.040</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027086</id>
<property name="fileName"><![CDATA[JIRADashboardStage4.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:24:30.179</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:24:30.179</property>
<property name="fileSize">85562</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206212898</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257322070]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 10:17:15.133</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 10:17:15.133</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207367002</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.sg/search?hl=en&source=hp&q=jira+portlet+conflluence&meta=&aq=0&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 20:03:15.081</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 20:03:15.081</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209471482</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://search.twitter.com/search?q=jira]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 18:02:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 18:02:15.031</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">209027080</id>
<property name="fileName"><![CDATA[ConfluenceExternalGadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-26 21:41:55.462</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-26 21:41:55.462</property>
<property name="fileSize">70182</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618767</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206802376</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=dragon+challenge+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 03:07:15.042</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 03:07:15.042</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207998751</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=installing+jira+on+a+remote+server&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 15:01:15.207</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 15:01:15.207</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209463664</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+quest+stage+2&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 08:11:15.065</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 08:11:15.065</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215483611</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215516216</id>
</element>
</collection>
<property name="version">83</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-28 20:08:50.563</property>
<property name="versionComment"><![CDATA[PostgreSQL JDBC driver bundled in Confluence 3.2]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207382578</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.br/search?q=install+green+hopper&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:pt-BR:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 03:31:15.094</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 03:31:15.094</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206212931</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=here+be+dragons+atlassian&ei=7uP6SoPYENTinAfrlrCGDQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 10:19:15.191</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 10:19:15.191</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205295082</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?rlz=1C1CHMG_enAU315AU315&sourceid=chrome&ie=UTF-8&q=jira+dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 14:57:15.122</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 17:44:15.092</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215483620</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215516226</id>
</element>
</collection>
<property name="version">84</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-29 23:07:22.988</property>
<property name="versionComment"><![CDATA[Reverted from v. 82]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209471455</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragonslayer&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 17:43:15.094</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 17:43:15.094</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138119</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://communities.vmware.com/blogs/cttyler/tags/perforce]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 13:10:15.129</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 13:12:15.067</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206829872</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://search.twitter.com/search?q=%23AtlassianDragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 18:27:15.057</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 18:27:15.057</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208947048</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragonslayer&rls=com.microsoft:*:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 06:46:15.142</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 06:46:15.142</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851616</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917096</id>
</element>
</collection>
<property name="version">55</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-18 00:46:31.679</property>
<property name="versionComment"><![CDATA[Update: We've decided to point our path to trunk only]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208044356</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=dragon+quest+jira]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 17:19:15.063</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 17:19:15.063</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207380790</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=7TI&q=greenhopper+jira+screenshot&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 23:02:15.066</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 23:02:15.066</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208936695</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?hl=pl&source=hp&q=bamboo%20gadget%20directory&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 09:32:15.253</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 09:32:15.253</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209556717</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.is/search?hl=is&q=we+be+dragons+&btnG=Leita&lr=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 07:40:15.290</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 07:40:15.290</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207468623</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ie/search?aq=0&oq=atlassian+dragon&sourceid=chrome&ie=UTF-8&q=atlassian+dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 20:59:15.067</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 20:59:15.067</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238617579</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238650231</id>
</element>
</collection>
<property name="version">96</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-28 23:28:35.316</property>
<property name="versionComment"><![CDATA[Fixed typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240189805</id>
<property name="position"/><property name="title"><![CDATA[JIRA Studio Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240222556</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2009-01-04 23:19:52.538</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2010-03-15 22:41:27.978</property>
<property name="versionComment"><![CDATA[Links.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206821087</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fr/search?q=bamboo+eclipse+plugin&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 11:45:15.064</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 11:45:15.064</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208936704</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 09:33:15.084</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 16:54:15.196</property>
</object>
<object class="SpaceDescription" package="com.atlassian.confluence.spaces">
<id name="id">164496123</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="title"/><collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528821</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.047</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:54:29.344</property>
<property name="versionComment"><![CDATA[]]></property>
<collection name="historicalVersions" class="java.util.Collection"><element class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">166004749</id>
</element>
</collection>
<property name="contentStatus"><![CDATA[current]]></property>
<collection name="labellings" class="java.util.Collection"><element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">166723686</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">166723759</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">239632385</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">238354615</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">238354644</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">238354643</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">180584449</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">172130375</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">169771077</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">169345356</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">168624602</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">167411769</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">168198196</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">169345186</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">224198712</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">170721288</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">169345210</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">177209421</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">199065676</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">177898124</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">178421895</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">233310299</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">180584704</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">179208294</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">203623409</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">216629328</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">181733101</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">193495282</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">207028318</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">218103941</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">219252434</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">228819249</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">223379463</id>
</element>
<element class="Labelling" package="com.atlassian.confluence.labels"><id name="id">240550299</id>
</element>
</collection>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207993826</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=jira+bamboo+integration]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 07:55:15.110</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 17:01:15.025</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209574038</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=installing+greenhopper+license&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 14:43:15.191</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 14:43:15.191</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851641</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917120</id>
</element>
</collection>
<property name="version">56</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-18 01:26:18.531</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210125129</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=wEE&q=dragonslayer+step+4+stage+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 18:10:15.215</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 18:10:15.215</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207359356</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=fisheye+sample+config.xml&first=11&FORM=PERE]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 07:26:15.076</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 07:26:15.076</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206801286</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.fi/search?hl=fi&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=bB9&q=jira+fisheye+integration+issue+id&btnG=Haku&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 00:42:15.059</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 00:42:15.059</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210125106</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?q=fisheye+repository+is+not+shown+in+source+tab&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 18:06:15.167</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 18:06:15.167</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210116251</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.se/search?q=jiraissues+confluence&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 03:39:15.194</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 03:39:15.194</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489382</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522014</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-23 22:35:02.192</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209582653</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://ffeathers.wordpress.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 08:48:15.191</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 08:48:15.191</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851545</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917025</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 22:39:28.773</property>
<property name="versionComment"><![CDATA[Added setup of Trusted Apps]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851554</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917033</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:11:10.174</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851560</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917040</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 22:50:43.507</property>
<property name="versionComment"><![CDATA[Added comment about JIRA issues in 'Victory' section]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">167215190</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Bamboo integration and provides links to more information. Unless otherwise stated, the information here refers to the latest version of JIRA, Bamboo and the JIRA Bamboo plugin. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Integrate [JIRA|http://www.atlassian.com/software/jira/] with [Bamboo|http://www.atlassian.com/software/bamboo/] to link JIRA issues to Bamboo builds. Once you have linked JIRA issues to your builds, you can view the linked issues in your Bamboo build results and build plans. You can also view build information in JIRA via tabs on related issues, versions and projects or on portlets.
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

+_Screenshot: Viewing the JIRA Issues for a Build Result_+
\\
\\
!BAMBOO:_Flagship Image^Bamboo-BuildResults-Issues.png|border=1,bordercolor=gray! 

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:BAMBOO:_about Integrating Bamboo with JIRA|nopanel=true}

h2. Components

h6. Type of Integration
{hide}
Give a short description --- is it a plugin, an application, a gadget, or what? For example:
Application Links is a plugin, which you will install and configure in the relevant products.
{hide}
JIRA Bamboo integration is enabled by two separate plugins, the *JIRA plugin for Bamboo* and the *JIRA Bamboo plugin* (i.e. Bamboo Plugin for JIRA). These plugins need to be installed and configured in both Bamboo and JIRA, as described in the [JIRA Bamboo integration documentation|BAMBOO:Integrating Bamboo with JIRA].


h6. List of Components
{hide}
Wherever possible, you should include the components from the inclusions library of the integration point's own doc space.
{hide}

You will need the following products to integrate JIRA and Bamboo:
* [JIRA|http://www.atlassian.com/software/jira]
* [Bamboo|http://www.atlassian.com/software/bamboo]
* The [JIRA Bamboo plugin|JIRAEXT:JIRA Bamboo Plugin] --- refer to the [JIRA Bamboo integration documentation|BAMBOO:Integrating Bamboo with JIRA] for details on how to set this up.

(i) _Please note, the JIRA Plugin for Bamboo is shipped with Bamboo._

h2. Version Matrix
{hide}
Wherever possible, you should include the version matrix from the inclusions library of the integration point's own doc space.
{hide}

The following matrix provides version compatibility information for the JIRA Bamboo plugin. As the JIRA plugin for Bamboo is bundled with Bamboo, the following matrix should provide you with all the information you need regarding component versions:

{include:JIRAEXT:JIRA Bamboo Plugin Version History|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

Please refer to the [JIRA Bamboo integration|BAMBOO:Integrating Bamboo with JIRA] documentation, as well as the [JIRAEXT:JIRA Bamboo Plugin] documentation.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207363268</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.google.com/reader/view/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 12:35:15.130</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 03:25:15.021</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207386360</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=setup+integrated]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 08:57:15.142</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 08:57:15.142</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138436</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&fkt=592&fsdt=4274&q=atlassian+dragon+slayer&aq=f&oq=&aqi=g2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 15:50:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 15:50:15.029</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207987859</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+bamboo+set+url+&btnG=Search&hl=en&sa=2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 18:22:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 18:22:15.078</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851569</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917050</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[nmuldoon]]></property>
<property name="lastModificationDate">2009-09-17 23:22:52.846</property>
<property name="versionComment"><![CDATA[updated licensing]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207481679</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&q=JIRA+ignoring+JAVA_HOME&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 16:02:15.018</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 16:02:15.018</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204774031</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=dragon+slayer+atlassian&ei=MHj5SvbmCZTEngeUuq35DA&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 08:27:15.200</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 08:27:15.200</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210125053</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?q=fisheye+source+tab&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 17:55:15.283</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 17:55:15.283</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238617557</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238650209</id>
</element>
</collection>
<property name="version">95</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-05 00:31:34.146</property>
<property name="versionComment"><![CDATA[Fixed instruction for going to FishEye admin screen]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210121165</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cl/search?hl=es&client=firefox-a&rls=com.ubuntu%3Aen-US%3Aunofficial&hs=jWm&q=atlassian+bamboo+build+steps&btnG=Buscar&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 10:38:15.339</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 10:38:15.339</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138382</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon&ei=TQkkS-6NNIu2MKuNnOAJ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 15:22:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 15:22:15.058</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238617555</id>
<property name="position">9</property>
<property name="title"><![CDATA[Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238650207</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:13:04.998</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209556759</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.za/search?q=jira+greenhopper+burndown+chart+closed&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 07:44:15.323</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 07:44:15.323</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206536825</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=38451&tstart=60]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 13:26:15.121</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 13:26:15.121</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">242614287</id>
<property name="fileName"><![CDATA[dragon_badge08-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 20:08:25.095</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 20:08:25.095</property>
<property name="fileSize">9102</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">242614286</id>
<property name="fileName"><![CDATA[dragon_08-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 20:08:23.889</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 20:08:23.889</property>
<property name="fileSize">82887</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570725</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=29080&tstart=-5]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 09:43:15.217</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 09:43:15.217</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238617552</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238650204</id>
</element>
</collection>
<property name="version">72</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-26 21:54:23.196</property>
<property name="versionComment"><![CDATA[Changed "entity" to "project" plus other terminology and formatting fixes]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208049171</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?sourceid=chrome&ie=UTF-8&q=atlassian+bamboo+base+url]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 05:54:15.167</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 05:54:15.167</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238617550</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238650202</id>
</element>
</collection>
<property name="version">77</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-27 01:10:31.740</property>
<property name="versionComment"><![CDATA[JDK 1.6 required, plus fixed some grammar]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851589</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917070</id>
</element>
</collection>
<property name="version">52</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 20:35:03.481</property>
<property name="versionComment"><![CDATA[Adjusted SVN setup nav because they're now in db setup]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208049167</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.il/search?hl=en&client=firefox-a&rlz=1R1GGGL_en___IL331&hs=5Od&ei=L2wOS8L7M4i04QbP7tmEBA&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CBYQBSgA&q=install+jira+%22greenhopper%22+plugin&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 05:54:15.115</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 05:54:15.115</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851594</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917075</id>
</element>
</collection>
<property name="version">53</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-18 00:19:00.680</property>
<property name="versionComment"><![CDATA[Path should point to trunk]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851602</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917083</id>
</element>
</collection>
<property name="version">54</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-18 00:26:32.314</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206211880</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=dragons+stage+2+&ie=utf-8&oe=utf-8&aq=t&rlz=1R1GGGL_de___DE346&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 09:04:15.153</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 09:04:15.153</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851493</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916977</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 01:10:16.064</property>
<property name="versionComment"><![CDATA[Refined the note about SVN and other repositories]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392866</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425545</id>
</element>
</collection>
<property name="version">57</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:14:00.885</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570816</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=atlassian%2C+dragonslayer&src=IE-SearchBox&FORM=IE8SRC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 09:50:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 11:41:15.032</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851489</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916973</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 20:03:49.685</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392869</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425547</id>
</element>
</collection>
<property name="version">60</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:40:57.564</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BlogPost" package="com.atlassian.confluence.pages">
<id name="id">164496403</id>
<property name="title"><![CDATA[Welcome to Atlassian Product Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529079</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:04:22.296</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:10:40.159</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">164496394</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392860</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425539</id>
</element>
</collection>
<property name="version">71</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:46:19.965</property>
<property name="versionComment"><![CDATA[Removed enabling of external user management because this option doesn't work anyway]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208005285</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.nl/search?hl=en&client=firefox-a&rls=org.mozilla%3Anl%3Aofficial&hs=Tsw&q=jira+unable+to+view+profile+crowd&btnG=Search&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 06:33:15.270</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 06:33:15.270</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392858</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425537</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:38:29.982</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392857</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425536</id>
</element>
</collection>
<property name="version">68</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:44:06.051</property>
<property name="versionComment"><![CDATA[Changed 'unzip' to 'unpack']]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392862</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425541</id>
</element>
</collection>
<property name="version">78</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 21:24:01.710</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209584151</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209616920</id>
</element>
</collection>
<property name="version">70</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:51:33.692</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851482</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916966</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 20:00:58.524</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453254</id>
<property name="destinationPageTitle"><![CDATA[//www.pgadmin.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:16:27.675</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:16:27.675</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851511</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916995</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:35:34.283</property>
<property name="versionComment"><![CDATA[Minor edit.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207468764</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.kr/search?q=JIRA+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ko-KR:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 21:38:15.113</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 21:38:15.113</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851509</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916993</id>
</element>
</collection>
<property name="version">51</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 20:23:57.689</property>
<property name="versionComment"><![CDATA[Added screenshot and problems insert]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">170721304</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">28508168</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="user"><![CDATA[yjy@goldpitcher.com]]></property>
<property name="creationDate">2008-11-03 14:36:52.059</property>
<property name="lastModificationDate">2008-11-03 14:36:52.059</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205293989</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://forums.atlassian.com/message.jspa?messageID=257320291]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 13:19:15.118</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 19:55:15.108</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851501</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916985</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 23:01:48.150</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206827447</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.exalead.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 23:59:15.043</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 23:59:15.043</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851499</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916983</id>
</element>
</collection>
<property name="version">50</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 19:15:14.571</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697443</id>
<property name="fileName"><![CDATA[FishEyeSourceView-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-02 22:10:41.313</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-02 22:10:41.313</property>
<property name="fileSize">74035</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665762</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:02.644</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:02.644</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206816715</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?hl=en&client=firefox-a&rlz=1R1GGGL_de___DE323&q=bambooHome+global+variable&btnG=Search&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 05:20:15.119</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 05:20:15.119</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665761</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:02.644</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:02.644</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207481922</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+install+greenhopper&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 18:08:15.020</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 18:08:15.020</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211060997</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093685</id>
</element>
</collection>
<property name="version">53</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-28 22:11:46.540</property>
<property name="versionComment"><![CDATA[Fixed formatting]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665768</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:29.718</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:29.718</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489518</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522147</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 21:35:45.174</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665767</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:29.718</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:29.718</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665770</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[CROWD]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:29.718</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:29.718</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665769</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:29.718</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:29.718</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211060993</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093682</id>
</element>
</collection>
<property name="version">51</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:55:24.605</property>
<property name="versionComment"><![CDATA[Fixed inconsistent capitalisation]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697439</id>
<property name="fileName"><![CDATA[FishEyeDashboard-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-02 21:53:05.451</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-02 21:53:05.451</property>
<property name="fileSize">48242</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665764</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:02.644</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:02.644</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665763</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:02.644</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:02.644</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665766</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/crowd]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:29.718</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:29.718</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211060996</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093684</id>
</element>
</collection>
<property name="version">52</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-28 22:09:04.390</property>
<property name="versionComment"><![CDATA[Added Twitter stream via widget macro]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210121101</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.es/search?q=Here+be+dragons+fisheye&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:es-ES:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 10:33:15.100</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 10:33:15.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665765</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[CROWD]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 01:50:02.644</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:50:02.644</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489515</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522144</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 21:27:13.927</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138217</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1C1GGLS_enUS346US347&q=atlassian+dragib+skayer&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 13:54:15.238</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 13:54:15.238</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489505</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522134</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 21:25:53.661</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">214859866</id>
<property name="position"/><property name="title"><![CDATA[JIRA Studio Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">214892632</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2009-01-04 23:19:52.538</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2009-01-04 23:25:55.466</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851537</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917019</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 22:40:39.360</property>
<property name="versionComment"><![CDATA[Reverted from v. 42 to reinstate JIM]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851539</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917021</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 22:43:21.428</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208001447</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/ellenfeaheny/statuses/5953576221]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 22:54:15.085</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 22:54:15.085</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851534</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917016</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[nmuldoon]]></property>
<property name="lastModificationDate">2009-09-17 20:24:36.002</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489503</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522132</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 21:10:39.395</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851535</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917017</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 20:12:33.935</property>
<property name="versionComment"><![CDATA[Reverted from v. 40  to temporarily exclude JIRA Issues Macro]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697454</id>
<property name="fileName"><![CDATA[FishEyeCrucibleAppLinks-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-02 23:11:16.704</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-02 23:11:16.704</property>
<property name="fileSize">28851</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489498</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522126</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 18:29:44.108</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215483799</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215516361</id>
</element>
</collection>
<property name="version">85</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-29 23:14:36.159</property>
<property name="versionComment"><![CDATA[Reverted from v. 81]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207390660</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=installing+greenhopper+in+jira+4&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 15:06:15.059</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 15:06:15.059</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210129813</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.be/search?q=atlassian+here+be+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 06:39:15.339</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 09:35:15.304</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207980290</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragons&ei=PHwKS8ihFIn2-AaJ_O3FDQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 06:13:15.097</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 06:13:15.097</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241672921</id>
<property name="destinationPageTitle"><![CDATA[//forums.atlassian.com/forum.jspa?forumID=126]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:46:29.009</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:46:29.009</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241672920</id>
<property name="destinationPageTitle"><![CDATA[//answers.atlassian.com/tags/integration/]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:46:29.009</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:46:29.009</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241672919</id>
<property name="destinationPageTitle"><![CDATA[//support.atlassian.com]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:46:29.009</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:46:29.009</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392799</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425481</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:50:08.029</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211060897</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093593</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-21 21:50:26.646</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208055832</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.se/search?hl=sv&q=jira+windows+greenhopper&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 02:37:15.158</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 02:37:15.158</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206801437</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://co109w.col109.mail.live.com/mail/InboxLight.aspx?n=750494190]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 01:09:15.050</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 01:09:15.050</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208477734</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=bamboo+and+jira+studio&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 11:28:15.170</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 11:28:15.170</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209566484</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=jira+dropdown+with+assign+to+me&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 03:44:15.265</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 03:44:15.265</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206827401</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=jira+dashboard+base+URL&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 23:32:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 23:32:15.025</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570887</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=1G1GGLQ_ENUS264&q=atlas-run+greenhopper&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 09:54:15.303</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 09:54:15.303</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208005223</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=hu&q=jira+4+gadget+base+url&btnG=Keres%C3%A9s&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 06:28:15.105</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 06:28:15.105</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392823</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425503</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[pdzwart]]></property>
<property name="lastModificationDate">2009-09-30 18:38:32.902</property>
<property name="versionComment"><![CDATA[Updating CLI PostgreSQL commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392824</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Create JIRA Project]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425504</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:00:44.967</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:57:32.957</property>
<property name="versionComment"><![CDATA[Colour]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851443</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916927</id>
</element>
</collection>
<property name="version">48</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 02:19:10.825</property>
<property name="versionComment"><![CDATA[Expanded setup instructions]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">204049417</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">204081934</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-21 11:06:32.382</property>
<property name="versionComment"><![CDATA[Fixed typo in step 2.8 (sprint 2.0.s2 not s1)]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570862</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=ACi&q=trusted+application+to+FishEye&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 09:53:15.172</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 09:55:15.239</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138313</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=en&q=confluence+dragons&sourceid=navclient-ff&rlz=1B3GGGL_enUS356US356&ie=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 14:49:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 14:49:15.028</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209556670</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=setup+fisheye&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 07:36:15.190</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 07:36:15.190</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697544</id>
<property name="fileName"><![CDATA[CrucibleJIRAProjectEntityLink-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-03 01:12:54.606</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-03 01:12:54.606</property>
<property name="fileSize">38408</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697545</id>
<property name="fileName"><![CDATA[JIRAIssueReviewsTab-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-03 01:22:44.590</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-03 01:22:44.590</property>
<property name="fileSize">62998</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392812</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425493</id>
</element>
</collection>
<property name="version">58</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:23:42.239</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392810</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425491</id>
</element>
</collection>
<property name="version">57</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 00:58:55.045</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="PageTemplate" package="com.atlassian.confluence.pages.templates">
<id name="id">166395908</id>
<property name="name"><![CDATA[Integration Point Template]]></property>
<property name="description"><![CDATA[Summary information for an integration point]]></property>
<property name="labels"><![CDATA[]]></property>
<property name="content"><![CDATA[This page gives an overview of @IntegrationPoint@ and provides links to more information. Unless otherwise stated, the information here refers to the latest version of @IntegrationPoint@. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use @IntegrationPoint@ to @ShortDescription|textarea(10,10)@
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

+_Screenshot: xxxxxxxxxxxxxxxxxxx_+
\\
\\
!MYSPACE:_Flagship Image^MyImageName.png|border=1,bordercolor=gray!

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:MYSPACE:_About|nopanel=true}

h2. Components

h6. Type of Integration
{hide}
Give a short description --- is it a plugin, an application, a gadget, or what? For example:
Application Links is a plugin, which you will install and configure in the relevant products.
{hide}

h6. List of Components
{hide}
Wherever possible, you should include the components from the inclusions library of the integration point's own doc space.
{hide}
{include:MYSPACE:_Components|nopanel=true}

h2. Version Matrix
{hide}
Wherever possible, you should include the version matrix from the inclusions library of the integration point's own doc space.
{hide}
{include:MYSPACE:_Version Compatibility|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [@IntegrationPoint@ documentation|MYSPACE:]:
{children:page=MYSPACE:@IntegrationPoint@ Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of @IntegrationPoint@ Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-15 23:41:41.777</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-18 23:49:13.469</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207455586</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://confluence.cmg/display/TECHSERV/2009/11/19/Enter+The+Dragon%27s+Lair%21]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 20:01:15.069</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 20:01:15.069</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207380562</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://in.mc954.mail.yahoo.com/mc/welcome?.gx=1&.tm=1258516564&.rand=f5ogmntlon4n6]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 22:07:15.038</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 22:07:15.038</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697505</id>
<property name="fileName"><![CDATA[JIRAIssueSourceTab-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-03 00:02:59.612</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-03 00:02:59.612</property>
<property name="fileSize">83007</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205687572</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.es/url?sa=t&source=web&ct=res&cd=4&ved=0CBkQFjAD&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FJIRA%2BBamboo%2BIntegration&rct=j&q=jira+%2B+bamboo&ei=YoH6Sr3FAo-64Qbzg62NAQ&usg=AFQjCNFTFBKkczgbg8UAnafz-GXaah69Xg]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 03:19:15.176</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 03:19:15.176</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392830</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425510</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:10:00.367</property>
<property name="versionComment"><![CDATA[Change SVN repo to Atlassian hosted]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392829</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425509</id>
</element>
</collection>
<property name="version">59</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:24:55.309</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851451</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916935</id>
</element>
</collection>
<property name="version">49</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 19:07:05.858</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207372982</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&source=hp&q=JIRA+Bamboo+Plugin+2.0&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 08:20:15.174</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 08:24:15.445</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392832</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425512</id>
</element>
</collection>
<property name="version">70</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:39:27.753</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392826</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425506</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 23:00:58.451</property>
<property name="versionComment"><![CDATA[char]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392827</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425507</id>
</element>
</collection>
<property name="version">69</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[mhrynczak]]></property>
<property name="lastModificationDate">2009-10-01 00:38:17.907</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207464368</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragon+quest+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 11:48:15.169</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 18:35:15.115</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489445</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522076</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 16:56:07.126</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851478</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916962</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 01:34:03.031</property>
<property name="versionComment"><![CDATA[Changed location of home dir for consistency]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208945473</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=eclipse+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:sv-SE:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 04:23:15.061</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 04:23:15.061</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206825356</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox&rls=org.gentoo:en-US:official&hs=O1w&q=full+screen+dragon+from+command+line&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 05:55:15.041</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 05:55:15.041</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207481849</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=confluence+software+requirements&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 17:30:15.048</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 17:30:15.048</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697519</id>
<property name="fileName"><![CDATA[JIRADashboardFishEye-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-03 00:46:48.223</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-03 00:46:48.223</property>
<property name="fileSize">95754</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208005239</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=hu&q=jira+4+gadget+base+url&btnG=Keres%C3%A9s&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 06:29:15.061</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 06:29:15.061</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392843</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425523</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 21:00:03.559</property>
<property name="versionComment"><![CDATA[Updated repository info wrt Atlassian-hosted svn]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697513</id>
<property name="fileName"><![CDATA[JIRAProjectSourceTab-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-03 00:07:38.123</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-03 00:07:38.123</property>
<property name="fileSize">67690</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392844</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425524</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:59:11.900</property>
<property name="versionComment"><![CDATA[Fixed link to details]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673248</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRASTUDIO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207390504</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=Atlassian+suite+&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 14:50:15.214</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 14:50:15.214</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673250</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673249</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[EHOSTING]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168560105</id>
<property name="body"><![CDATA[{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level. This severity level is based on our self-calculated CVSS score for each specific vulnerability. CVSS is an industry standard vulnerability metric. You can learn more about CVSS at [FIRST.org|http://www.first.org/cvss/cvss-guide.html] web site.

CVSS scores are mapped into the following severity ratings:

* Critical
* High
* Medium
* Low

An approximate mapping guideline is as follows:

|| CVSS score range || Severity in advisory ||
| 0 -- 2.9 | Low |
| 3 -- 5.9 | Medium |
| 6.0 -- 7.9 | High |
| 8.0 -- 10.0 | Critical |

Below is a summary of the factors which illustrate types of vulnerabilities usually resulting in a specific severity level. Please keep in mind that this rating does not take into account details of your installation.

h5. Severity Level: Critical

Vulnerabilities that score in the Critical range usually include:
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers.
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

For critical vulnerabilities, is advised that you patch or upgrade as soon as possible, unless you have other mitigating measures in place. For example, if your installation is not accessible from the Internet, this may be a mitigating factor.

h5. Severity Level: High

Vulnerabilities that score in the High range usually have the following characteristics:

* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* Exploitation does not result in a significant data loss.

h5. Severity Level: Medium

Vulnerabilities that score in the Medium range usually have the following characteristics:

* Denial of service vulnerabilities that are difficult to set up.
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

h5. Severity Level: Low

Vulnerabilities in the Low range typically have very little impact on an organisation's business. Exploitation of such vulnerabilities usually requires local or physical system access. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912476</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240944972</id>
</element>
</collection>
<property name="version">64</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-05-10 02:22:08.541</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697107</id>
<property name="fileName"><![CDATA[FishEyeDatabaseSetup-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-02 01:35:01.521</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-02 01:35:01.521</property>
<property name="fileSize">87849</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673256</id>
<property name="destinationPageTitle"><![CDATA[Integration Points]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673255</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912474</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240944970</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:38:13.592</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-02-28 18:39:52.219</property>
<property name="versionComment"><![CDATA[JDK must be 32-bit on 64-bit Windows]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673257</id>
<property name="destinationPageTitle"><![CDATA[Integration Points]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.504</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.504</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912480</id>
<property name="position"/><property name="title"><![CDATA[_Dragons PostgreSQL]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240944976</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:40:12.574</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 21:53:08.060</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673252</id>
<property name="destinationPageTitle"><![CDATA[//support.atlassian.com]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673251</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[DEVNET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673254</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/support/training.jsp]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912478</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240944974</id>
</element>
</collection>
<property name="version">79</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-05-10 02:22:08.399</property>
<property name="versionComment"><![CDATA[Fixed field names and removed "When the build has finished"]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241673253</id>
<property name="destinationPageTitle"><![CDATA[//answers.atlassian.com/tags/integration/]]></property>
<property name="destinationSpaceKey"><![CDATA[https]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-01 20:56:15.503</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:56:15.503</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208053221</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=29080&tstart=45]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 14:39:15.048</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 09:02:15.074</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208936929</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://dotjem.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 09:48:15.264</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 09:48:15.264</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207455503</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enUS341US341&sourceid=chrome&ie=UTF-8&q=atlassian+dragon+slayer]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 19:44:15.097</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 19:44:15.097</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210116503</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=Atlasian+Bamboo+Eclipse&sourceid=ie7&rls=com.microsoft:en-US&ie=utf8&oe=utf8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 03:59:15.333</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 03:59:15.333</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208477296</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=en&source=hp&q=8+bamboo&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 10:47:15.227</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 10:47:15.227</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207455527</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=Atlassian+Integrations+Support+eclipse&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 19:49:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 19:49:15.031</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208945530</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ro/search?rlz=1C1GGLS_enRO350RO351&sourceid=chrome&ie=UTF-8&q=jira+4+greenhopper+install]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 04:26:15.331</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 04:26:15.331</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210125373</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=jira+bamboo+integration&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 18:56:15.150</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 18:56:15.150</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">226888983</id>
<property name="body"><![CDATA[{excerpt}3.5.5{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791031</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">245827508</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">245860002</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-07-04 22:05:54.618</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138572</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon&ei=qh8kS4ryApHgNbXnkewJ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 16:57:15.085</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 16:57:15.085</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207376708</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla:en-US:official&hs=fyT&ei=1vUCS-nNB4-onQflm_xq&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=jira+integration+guide&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 13:15:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 13:15:15.070</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208954246</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=atlassian+fisheye+gadget+project&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 17:41:15.060</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 17:41:15.060</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208005590</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ch/search?q=plugin+bamboo+pour+eclipse&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:fr:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 07:00:15.141</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 07:00:15.141</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207481428</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 14:04:15.034</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 15:37:15.203</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">204053349</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">204085626</id>
</element>
</collection>
<property name="version">75</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-12 17:33:39.719</property>
<property name="versionComment"><![CDATA[Confluence 3.0.1 or 3.0.2 are OK]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207359131</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/2009/10/integrating-multiple-atlassian-products-follow-our-guide-and.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 07:08:15.083</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 07:08:15.083</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">226888962</id>
<property name="body"><![CDATA[{excerpt}5.6.4{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791000</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207380989</id>
<property name="viewCount">6</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=dragon+slayer+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 23:51:15.097</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 17:17:15.110</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208044525</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=here%20will%20be%20dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 17:54:15.086</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 17:54:15.086</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208949866</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=en&safe=off&q=integration+points&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 10:07:15.235</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 10:07:15.235</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208945551</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.cfauth.com/?cfru=aHR0cDovL2NvbmZsdWVuY2UuYXRsYXNzaWFuLmNvbS9kaXNwbGF5L0FUTEFTL0hlcmUrQmUrRHJhZ29ucw==]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 04:29:15.115</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 04:29:15.115</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">226201933</id>
<property name="body"><![CDATA[{excerpt}1.6{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">226169591</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">226201930</id>
<property name="body"><![CDATA[{excerpt}8.4.x{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">226169587</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489563</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522190</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 21:37:31.751</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912456</id>
<property name="position">9</property>
<property name="title"><![CDATA[Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240944956</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-28 23:22:15.589</property>
<property name="versionComment"><![CDATA[Changed time estimate and removed unnecessary note]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">167182429</id>
<property name="position"/><property name="title"><![CDATA[JIRA Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">167215194</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:19.368</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-08-28 02:03:19.368</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">167182431</id>
<property name="position"/><property name="title"><![CDATA[JIRA Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">167215196</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:19.368</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-08-28 02:06:47.994</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138661</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://iconfactory.com/twitterrific]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 17:55:15.032</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 17:55:15.032</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">240291159</id>
<property name="destinationPageTitle"><![CDATA[Getting Started with Bamboo in JIRA Studio]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRASTUDIO]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2011-05-04 02:34:49.353</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-05-04 02:34:49.353</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209470007</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&q=http%3A%2F%2Flocalhost%3A8085+not+working+bamboo&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-05 06:04:15.023</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-05 06:04:15.023</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570463</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=Atlassian+Here+be+Dragons&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 09:22:15.469</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 09:22:15.469</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851254</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916761</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:18:49.603</property>
<property name="versionComment"><![CDATA[Settings table.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210120905</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+install&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 10:17:15.519</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 10:17:15.519</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211714932</id>
<property name="body"><![CDATA[h2. The Big List of Gadgets
{excerpt}
The [big list of all Atlassian gadgets|GADGETS:All Atlassian Gadgets] tells you about all our gadgets, where they come from and where you can put them.
{excerpt}

{include:GADGETS:_Introduction to the List|nopanel=true}

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Gadgets documentation|GADGETS:]:
{children:page=GADGETS:Gadgets and Dashboards Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Gadgets and Dashboards Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211649471</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851252</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916759</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 01:49:12.365</property>
<property name="versionComment"><![CDATA[Refined the installation instructions]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208959022</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.nl/search?hl=en&safe=off&client=firefox-a&rls=com.ubuntu%3Aen-US%3Aofficial&hs=E4p&q=jira+confluence+jiraissues&btnG=Search&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 06:04:15.084</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 06:04:15.084</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851251</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916758</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:07:21.757</property>
<property name="versionComment"><![CDATA[Removed subtask information.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206825072</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=hVF&q=atlassian+dragon&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 03:35:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 03:40:15.048</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851246</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916754</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:04:33.858</property>
<property name="versionComment"><![CDATA[Numbering.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233963629</id>
<property name="fileName"><![CDATA[ConfluenceAppLinks.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-06 20:36:33.512</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-06 20:36:33.512</property>
<property name="fileSize">68232</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453500</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/greenhopper/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:37:27.412</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.412</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453499</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:37:27.412</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.412</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166106681</id>
<property name="destinationPageTitle"><![CDATA[Application Links (AppLinks)]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166003925</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 20:02:34.573</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 20:02:34.573</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851245</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916753</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:03:59.313</property>
<property name="versionComment"><![CDATA[Headings.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206809904</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragons&ei=nWH8Sq-_N8PinAe7k-2QBQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 13:28:15.060</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 13:28:15.060</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453502</id>
<property name="destinationPageTitle"><![CDATA[GreenHopper 101]]></property>
<property name="destinationSpaceKey"><![CDATA[GH]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:37:27.412</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.412</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166106680</id>
<property name="destinationPageTitle"><![CDATA[//forums.atlassian.com/forum.jspa?forumID=125]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166003925</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 20:02:34.573</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 20:02:34.573</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851248</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916756</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:05:42.413</property>
<property name="versionComment"><![CDATA[Screens.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453501</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:37:27.412</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.412</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233963630</id>
<property name="fileName"><![CDATA[ConfluenceExternalGadgets-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-06 20:39:46.128</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-06 20:39:46.128</property>
<property name="fileSize">57700</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166106679</id>
<property name="destinationPageTitle"><![CDATA[Integration Points]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166003925</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 20:02:34.573</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 20:02:34.573</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489785</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522400</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2009-10-28 00:48:11.179</property>
<property name="versionComment"><![CDATA[Updated GreenHopper doc link to point to 101 guide instead of (deprecated) quick start guide]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453504</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 3 - Install Confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:37:27.412</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.412</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166106678</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166003925</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 20:02:34.573</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 20:02:34.573</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453503</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=GreenHopper for agile dragon slayers. I've completed stage 2 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:37:27.412</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.412</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851244</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916752</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:03:12.113</property>
<property name="versionComment"><![CDATA[Added JIRA configuration steps.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453505</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:37:27.412</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.412</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851243</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916751</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 21:54:01.559</property>
<property name="versionComment"><![CDATA[Introduction.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851237</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916746</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 23:54:03.053</property>
<property name="versionComment"><![CDATA[Added FISHEYE_INST details.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665536</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489813</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522428</id>
</element>
</collection>
<property name="version">66</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-12 16:50:38.858</property>
<property name="versionComment"><![CDATA[Added note about Maven, javax and Atlassian Plugin SDK]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665535</id>
<property name="destinationPageTitle"><![CDATA[JIRA Issues Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665538</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665537</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208009747</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enUS352US352&sourceid=chrome&ie=UTF-8&q=dragon+slayer+atlassian.com]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 13:01:15.064</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 13:01:15.064</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489812</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522427</id>
</element>
</collection>
<property name="version">76</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-08 16:59:45.436</property>
<property name="versionComment"><![CDATA[Fixed minor typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207993424</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=confluence+jira+portlet&rls=com.microsoft:fi:IE-SearchBox&ie=UTF-8&oe=UTF-8&sourceid=ie7&rlz=1I7GGLJ]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 07:21:15.095</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 07:21:15.095</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665534</id>
<property name="destinationPageTitle"><![CDATA[JIRA Issues Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206801120</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=Eqb7SsCgDYTUtgPX9_GGAQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 00:08:15.060</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 00:08:15.060</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">228622668</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">228655395</id>
</element>
</collection>
<property name="version">67</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:36:14.345</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210120881</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=dragon+hids+integration+with+applications+on+windows+or+unix+servers&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 10:16:15.112</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 10:16:15.112</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">242614312</id>
<property name="fileName"><![CDATA[JIRADashboardFinal-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 21:18:56.896</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 21:18:56.896</property>
<property name="fileSize">129965</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665540</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665539</id>
<property name="destinationPageTitle"><![CDATA[JIRA Issues Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851228</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916737</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 21:01:30.494</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665541</id>
<property name="destinationPageTitle"><![CDATA[JIRA Issues Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:46:11.757</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:46:11.757</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208059852</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enIE299IE303&sourceid=chrome&ie=UTF-8&q=bamboob+gadgets]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 09:49:15.236</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 09:49:15.236</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209465426</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=eclipse+bamboo+plugin&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 10:41:15.066</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 10:41:15.066</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207390399</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?sourceid=navclient&aq=0h&oq=dragons&hl=en-GB&ie=UTF-8&rlz=1T4HPEB_en-GBGB291GB292&q=dragons+key+stage+2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 14:39:15.188</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 14:39:15.188</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489762</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Create JIRA Project]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522376</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:00:44.967</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:37:37.854</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206821251</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ru/search?q=JIRA+server%27s+remote+API+enable&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 12:06:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 12:06:15.054</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209560695</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=bamboo+eclipse+plugin&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 13:17:15.108</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 13:17:15.108</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">164598760</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">164496394</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:27:17.954</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:27:17.954</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">164598762</id>
<property name="destinationPageTitle"><![CDATA[Integration Development Hub]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">164496394</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:27:17.954</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:27:17.954</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">164598761</id>
<property name="destinationPageTitle"><![CDATA[Integration Points]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">164496394</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:27:17.954</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:27:17.954</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208053122</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=jira+dragon&cts=1259266330445&aq=f&oq=&aqi=g1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 14:13:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 14:13:15.128</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206816446</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?q=dragon+slayers+fisheye&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 04:51:15.046</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 04:51:15.046</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851258</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916765</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 02:23:58.046</property>
<property name="versionComment"><![CDATA[Headings.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233963569</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardStory-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-03 20:27:32.074</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-03 20:27:32.074</property>
<property name="fileSize">41220</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851186</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916695</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 21:30:05.397</property>
<property name="versionComment"><![CDATA[Stage 8 in tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851185</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916694</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 22:28:18.452</property>
<property name="versionComment"><![CDATA[Standardised wording and moved db driver up to avoid restart]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233963571</id>
<property name="fileName"><![CDATA[JIRADashboard3Gadgets-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-03 21:19:07.910</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-03 21:19:07.910</property>
<property name="fileSize">42050</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215483952</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215516510</id>
</element>
</collection>
<property name="version">69</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:16:02.373</property>
<property name="versionComment"><![CDATA[Changed tweet url from trim to bitly]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207469084</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&safe=off&rlz=1C1GGLS_enAU324AU324&q=atlassian+bamboo+run+as+administrator&btnG=Search&meta=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 23:09:15.016</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 23:09:15.016</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851190</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916699</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 23:49:22.889</property>
<property name="versionComment"><![CDATA[Various fixes from Dragons meeting.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">204242966</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">190119954</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="user"><![CDATA[rjansen]]></property>
<property name="creationDate">2009-10-15 02:48:35.369</property>
<property name="lastModificationDate">2009-10-15 02:48:35.369</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851191</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916700</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 23:50:28.195</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">245827458</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">245859956</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[rfernandes]]></property>
<property name="lastModificationDate">2010-12-23 20:49:46.732</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453436</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=JIRA is hot, the dragon is not! I've completed stage 1 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233963564</id>
<property name="fileName"><![CDATA[GreenHopperTaskBoard-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-03 19:59:13.788</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-03 19:59:13.788</property>
<property name="fileSize">26941</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453435</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453438</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453437</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 2 - Install GreenHopper into JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453431</id>
<property name="destinationPageTitle"><![CDATA[JIRA Installation and Upgrade Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207993490</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=confluence+dragons&ei=wN4LS57XM8bB-Qart72rCA&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 07:27:15.206</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 07:27:15.206</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453432</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453433</id>
<property name="destinationPageTitle"><![CDATA[Running the Setup Wizard]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453434</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453427</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/JIRADownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453428</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453429</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453430</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453423</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/JIRADownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453424</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453425</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453426</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453421</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453422</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:32:17.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.435</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208048802</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=safari&rls=en&q=dragon%27s+lair+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 05:17:15.169</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 05:17:15.169</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208064226</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=ko&source=hp&q=clicking+dragons&lr=&rlz=1R2ADRA_koPA331&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-28 15:43:15.033</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 15:43:15.033</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208954335</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+plugin+eclipse&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 17:55:15.127</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 17:55:15.127</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209456944</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=slay+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 15:29:15.083</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 15:29:15.083</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665554</id>
<property name="destinationPageTitle"><![CDATA[JIRA Portlet Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210125176</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragonslayer+twitter&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 18:19:15.164</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 18:19:15.164</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665557</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665558</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665555</id>
<property name="destinationPageTitle"><![CDATA[JIRA Portlet Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665556</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207477734</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://kobe/mail/tperlaky.nsf/($Inbox)/146251285E6BBC7685257671005F8DD0/?OpenDocument&PresetFields=s_ViewName;(%24Inbox),h_FolderStorage;(%24Inbox),s_FromMail;1,s_SortBy;2,s_NoMarkRead;1,s_HideRemoteImage;1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 14:48:15.159</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 14:48:15.159</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665561</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665562</id>
<property name="destinationPageTitle"><![CDATA[JIRA Portlet Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206801202</id>
<property name="viewCount">7</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 00:23:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 02:24:15.097</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665559</id>
<property name="destinationPageTitle"><![CDATA[JIRA Portlet Macro]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393098</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425766</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:44:36.511</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166665560</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/jira/docs/latest/dashboard.html]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-22 00:51:12.222</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 00:51:12.222</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851213</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916722</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:10:49.953</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393093</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425761</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:03:37.533</property>
<property name="versionComment"><![CDATA[Changed the badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393092</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425760</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 19:15:31.596</property>
<property name="versionComment"><![CDATA[Reverted from v. 43 to put the badge back at the top]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393089</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425757</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 19:02:35.817</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489707</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522323</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 16:04:17.111</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206825116</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.eg/search?q=how+to+install+fisheye&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 03:58:15.047</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 03:58:15.047</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489705</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522321</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-24 22:48:35.771</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208950023</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://writetrends.wordpress.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 10:18:15.316</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 10:40:15.190</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">233963583</id>
<property name="fileName"><![CDATA[ConfluenceDemoSpace-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-03 22:57:09.100</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-03 22:57:09.100</property>
<property name="fileSize">299749</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206821298</id>
<property name="viewCount">8</property>
<property name="url"><![CDATA[http://twitter.com/search?q=%23AtlassianDragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 12:12:15.063</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 16:20:15.065</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393081</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425750</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:03:12.135</property>
<property name="versionComment"><![CDATA[Changed the badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209460311</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=setting+up+postgres+8.4+on+jira&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 02:17:15.068</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 02:17:15.068</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206824925</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragonslayer]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 01:49:15.046</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 07:10:15.210</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208002070</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1C1CHMA_enRS355RS355&ei=X9gMS9POJJL6_Ab_xLmOBA&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=confluence+3.0.2+jira+portlet&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 01:11:15.132</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 01:11:15.132</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208044837</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 19:04:15.076</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 19:05:15.028</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210111926</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=atlassian+installation+guide+dragon&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 15:48:15.066</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 15:48:15.066</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707192</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674210</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:40:29.054</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207363661</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=navclient&ie=UTF-8&rlz=1T4WZPC_enUS340US340&q=install+confluence+example+sites]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 13:12:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 13:12:15.078</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209456509</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=Yed&q=jira+4+task+board+screens&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 14:44:15.218</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 14:44:15.218</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707189</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674208</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:39:05.332</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206824936</id>
<property name="viewCount">27</property>
<property name="url"><![CDATA[http://www.atlassian.com/starter/youslayedthedragon.jsp]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 01:55:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 19:41:15.169</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707187</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674206</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:52:02.816</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207456286</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://troii.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 22:52:15.079</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 08:14:15.151</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207463929</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=jira+gadget+bamboo+plan+summary+chart&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 11:06:15.241</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 11:06:15.241</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207984487</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/message.jspa?messageID=257322726]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 11:54:15.019</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 11:54:15.019</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210115730</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.kr/search?complete=1&hl=ko&lr=&newwindow=1&q=how+to+setup+single+sign-on+in+web+app&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 02:55:15.337</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 02:55:15.337</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707164</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674184</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-01 23:37:00.981</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207485502</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&q=Atlassian+Dragon&aq=f&oq=&aqi=g2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 22:58:15.052</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 22:58:15.052</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707215</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674233</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:48:56.123</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209456488</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=agile+jira+interface&rls=com.microsoft:*&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 14:42:15.123</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 14:42:15.123</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707211</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 12 - Add a Bamboo Gadget to JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674229</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:51:09.245</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207385918</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-GB%3Aofficial&hs=SER&q=jira+bamboo&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 08:24:15.214</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 08:24:15.214</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209578905</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.za/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-GB%3Aofficial&hs=v1I&q=integrate+bamboo+jira&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 03:17:15.523</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 03:17:15.523</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570168</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=O31&q=how+to+install+plugin+directory+jira+4+greenhopper&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 09:02:15.154</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 09:02:15.154</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707198</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674216</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:24:23.388</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707200</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674218</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:25:11.486</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207359835</id>
<property name="viewCount">14</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 08:03:15.068</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 15:28:15.252</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707194</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674212</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 01:47:18.312</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707205</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 7 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674223</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:39:06.461</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209565792</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=adding+greenhopper+to+jira+4&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 02:31:15.214</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 02:31:15.214</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210133238</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=dragenslayers+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:de:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 11:47:15.111</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 11:47:15.111</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208063936</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=jira+dragon&cts=1259435909203&aq=f&oq=&aqi=g1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-28 13:19:15.032</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 13:19:15.032</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707208</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674226</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:47:07.915</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707202</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674220</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:31:43.465</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707203</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 6 - Show FishEye Source Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674221</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:31:43.470</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">170262616</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">760</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="user"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-10-30 00:11:16.976</property>
<property name="lastModificationDate">2008-10-30 00:11:16.976</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207988419</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragons+layer]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 20:29:15.123</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 20:29:15.123</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138902</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257325426]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 21:41:15.022</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 21:41:15.022</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414069</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446641</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-11-30 18:45:50.191</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707101</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674121</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-01 22:42:27.985</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210111868</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=bamboo+jira+studio&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 15:42:15.080</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 15:42:15.080</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707107</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674127</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-01 23:11:13.606</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206537340</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=dragon+jira]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 14:15:15.196</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 14:15:15.196</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209583106</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=dragons+challenge+atlassian&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 09:18:15.069</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 09:18:15.069</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207359918</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=4BL&q=Web+Application+login+SSO&btnG=Search&meta=&cts=1258380668426&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 08:09:15.077</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 08:09:15.077</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707145</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 6 - Show FishEye Sources Views in JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674165</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:31:12.876</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206537301</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=fisheye+jira+servers+problem&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 14:11:15.147</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 14:11:15.147</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208478110</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=single+sign+on+across+web+apps&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 12:05:15.112</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 12:05:15.112</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204770125</id>
<property name="viewCount">54</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 03:13:15.228</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 00:08:15.044</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707131</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674151</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:07:48.517</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707133</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674153</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:23:52.524</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200707144</id>
<property name="position"/><property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200674164</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-02 00:29:35.706</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206824804</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=37828&tstart=15]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 00:26:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 00:26:15.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138710</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://humanitarianbamboo.org/blog/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 18:36:15.034</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 18:36:15.034</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208473811</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fi/search?hl=fi&client=firefox-a&rls=org.mozilla%3Afi%3Aofficial&hs=U8P&q=fisheye+get+changes&btnG=Haku&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 06:10:15.061</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 06:10:15.061</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208936012</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=change+fisheye+URL+jira&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 08:44:15.164</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 08:44:15.164</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">229834821</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">229900342</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-29 19:51:29.980</property>
<property name="versionComment"><![CDATA[Applied changes resulting from tech writer review]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208060125</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&safe=active&rlz=1G1GGLQ_ENUK313&q=install+atlassian+fisheye+&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 10:22:15.173</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 10:22:15.173</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208953619</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=TZI&q=SSO+web+application&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 16:13:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 16:13:15.027</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207381139</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-us&rlz=1I7GGLD_en&q=show+jira+issues+in+a+wiki+page&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 00:24:15.115</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 00:24:15.115</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205294517</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enUS291US303&sourceid=chrome&ie=UTF-8&q=bamboo+eclipse+integration]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 14:06:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 14:06:15.078</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">166723650</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">166756363</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="user"><![CDATA[mwball@gmail.com]]></property>
<property name="creationDate">2008-08-21 06:34:35.752</property>
<property name="lastModificationDate">2008-08-21 06:34:35.752</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">193790768</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">193823484</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-17 23:30:29.117</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207485375</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-au&q=jira+missing+top+navigation+bar&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 22:21:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 22:21:15.031</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414262</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446806</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-01 01:39:27.443</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138720</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon&ei=TzkkS8LTBpCwNpzOre4J&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 18:46:15.030</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 18:46:15.030</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852003</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917461</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 00:00:41.877</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207984627</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft:*&ei=XtAKS7gM1MWUB8z11JoM&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=atlassian+fisheye+setup&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 12:12:15.116</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 12:12:15.116</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852001</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917459</id>
</element>
</collection>
<property name="version">49</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 00:16:44.811</property>
<property name="versionComment"><![CDATA[Updated instructions on shutting down Confluence]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392358</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425055</id>
</element>
</collection>
<property name="version">71</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:45:24.772</property>
<property name="versionComment"><![CDATA[Changed 'unzip' to 'unpack']]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392356</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425053</id>
</element>
</collection>
<property name="version">66</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:44:45.756</property>
<property name="versionComment"><![CDATA[Changed 'unzip' to 'unpack']]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852006</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917464</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-17 20:47:40.648</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392351</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425048</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:02:09.811</property>
<property name="versionComment"><![CDATA[Colour]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208936055</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.sk/search?q=IDEA+integration+with+JIra&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 08:47:15.206</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 08:47:15.206</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851994</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917452</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 00:30:19.909</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208942089</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=atlassian%20install%20greenhopper]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 18:56:15.116</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 18:56:15.116</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207477045</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=how+to+install+greenhopper+license]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 13:29:15.165</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 13:29:15.165</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851998</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917456</id>
</element>
</collection>
<property name="version">49</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-20 23:38:34.672</property>
<property name="versionComment"><![CDATA[Updated with review comments from the UNIX tester]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">166723670</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">156663829</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="user"><![CDATA[blane]]></property>
<property name="creationDate">2008-08-21 19:33:45.060</property>
<property name="lastModificationDate">2008-08-21 19:33:45.060</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852019</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 11 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917477</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:08:20.279</property>
<property name="versionComment"><![CDATA[Changed page name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852022</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 9 - Add Bamboo Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917480</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:55:28.676</property>
<property name="versionComment"><![CDATA[Removed the Clover and Crucible stages]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392369</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425065</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:57:42.619</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852011</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917469</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:49:34.430</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207456184</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.my/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&q=integration+documentation&btnG=Search&meta=&aq=2&oq=integration+docu]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 22:26:15.042</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 22:26:15.042</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852009</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917467</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:52:04.575</property>
<property name="versionComment"><![CDATA[Removed the Crucible stage]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206820448</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=jira-atlassian-project-assignto&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 10:44:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 10:44:15.031</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201852013</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917471</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 01:53:42.302</property>
<property name="versionComment"><![CDATA[Removed the Clover and Crucible stages]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392362</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425059</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:45:59.203</property>
<property name="versionComment"><![CDATA[Changed 'unzip' to 'unpack']]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851974</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917432</id>
</element>
</collection>
<property name="version">58</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-20 22:53:41.303</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210121563</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=jira+slay+the+dragon&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 11:14:15.037</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 11:14:15.037</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208942112</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=greenhopper+jira+install&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 18:59:15.146</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 19:01:15.077</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">232556830</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Problem or Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">232589474</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:00:48.917</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 20:12:20.840</property>
<property name="versionComment"><![CDATA[Added link to Integration forum]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707120</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208001872</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.nz/search?q=bamboo+gadgets&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 00:38:15.109</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 00:38:15.109</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851966</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917424</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 00:09:52.004</property>
<property name="versionComment"><![CDATA[Updated with review comments from the UNIX tester]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392313</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425010</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 23:36:40.016</property>
<property name="versionComment"><![CDATA[Moved the forum link higher on the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392316</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425013</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 23:35:26.357</property>
<property name="versionComment"><![CDATA[Added link to forum]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208478278</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1C1GGLS_enUS341US348&q=confluence+jiraissues&aq=f&oq=&aqi=g2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 12:24:17.929</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 12:24:17.929</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851968</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917426</id>
</element>
</collection>
<property name="version">48</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-20 22:17:24.018</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392318</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425015</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:58:20.585</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">193790828</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in Eclipse]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">193823543</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:12:39.000</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-18 01:18:01.156</property>
<property name="versionComment"><![CDATA[Renaming the plugin]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207481327</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.se/search?q=jira+here+be+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:sv-SE:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 13:15:15.051</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 13:15:15.051</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851982</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917440</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 00:27:18.146</property>
<property name="versionComment"><![CDATA[Removed Clover+Crucible; added hardware requirements]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227444350</id>
<property name="body"><![CDATA[{excerpt}2.6{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411672</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227444349</id>
<property name="body"><![CDATA[{excerpt}2.6{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411670</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851977</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917435</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-20 23:59:59.640</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207984681</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.com/search?q=integrate+jira+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 12:17:15.143</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 14:24:15.061</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207979773</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&q=dragons&start=110&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 05:25:15.234</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 05:25:15.234</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392291</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424990</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 23:05:27.463</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392290</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424989</id>
</element>
</collection>
<property name="version">70</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 23:02:37.734</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392289</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424988</id>
</element>
</collection>
<property name="version">65</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:36:26.716</property>
<property name="versionComment"><![CDATA[Wording tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207481308</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-GB%3Aofficial&hs=Qnv&q=installing+postgres+for+java+web+app&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 13:09:15.071</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 13:09:15.071</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205687099</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=Here+be+Dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 02:29:15.053</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 02:29:15.053</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205294417</id>
<property name="viewCount">14</property>
<property name="url"><![CDATA[http://www.atlassian.com/newsletter/2009/10/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 13:57:15.059</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 00:29:15.073</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392282</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424981</id>
</element>
</collection>
<property name="version">64</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:15:51.073</property>
<property name="versionComment"><![CDATA[Added file name for Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489998</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207522594</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 16:06:39.013</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392288</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203424987</id>
</element>
</collection>
<property name="version">67</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 23:00:20.030</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851930</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917388</id>
</element>
</collection>
<property name="version">57</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-18 01:54:27.437</property>
<property name="versionComment"><![CDATA[Standardised the Crowd setup steps]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851959</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917417</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[nmuldoon]]></property>
<property name="lastModificationDate">2009-09-17 23:49:17.970</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">233148661</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">233181064</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:49:42.084</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207456115</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragons&ei=b8UES-2XNo7clAe53L3FCw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 22:12:15.077</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 22:12:15.077</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851950</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917408</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 20:18:21.041</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204770282</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?srch=106&FORM=AS6&q=jira+greenhopper+install]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 03:27:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 03:27:15.062</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851946</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917404</id>
</element>
</collection>
<property name="version">48</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 23:15:50.872</property>
<property name="versionComment"><![CDATA[Removed Trusted Apps again]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208953765</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.no/search?q=greenhopper+click+and+drag&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 16:30:15.217</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 16:30:15.217</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005072</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issues in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037644</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:27:12.288</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:27:12.288</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005066</id>
<property name="position"/><property name="title"><![CDATA[JIRA Portlet Displayed on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037638</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:09:37.551</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:09:37.551</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005065</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issues Listed on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037637</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 22:50:36.882</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 01:33:52.610</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206824661</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=dragon+atlassian&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 22:54:15.026</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 19:29:15.028</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208941647</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1C1GGLS_enUS333US333&q=fisheye+license+install&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 17:41:15.174</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 17:41:15.174</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392789</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425472</id>
</element>
</collection>
<property name="version">56</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 23:43:10.395</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207485246</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=2&ved=0CAsQFjAB&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FDragons%2BStage%2B2%2B-%2BInstall%2BJIRA&rct=j&q=jira+dragon&ei=HAQKS6eLJo7utgPz-pnACQ&usg=AFQjCNGJY-TFfevVMMVyjeFOvCIUr5gppg]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 21:41:15.030</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 21:41:15.030</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851925</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201917383</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 23:24:57.411</property>
<property name="versionComment"><![CDATA[Added setup of Trusted Apps]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241697587</id>
<property name="fileName"><![CDATA[CrucibleReviewCommentJIRAIssue-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-03 02:19:50.294</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-03 02:19:50.294</property>
<property name="fileSize">76013</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203396591</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203429050</id>
</element>
</collection>
<property name="version">74</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:54:20.502</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207368420</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ee/search?hl=et&client=firefox-a&rlz=1R1GGGL_en-GB___EE352&hs=K8x&q=crowd+integration+bamboo+create+administrator+problem&btnG=Otsi&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 01:18:15.089</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 01:18:15.089</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210116001</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en-dk&q=greenhopper%203%20licensing&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 03:19:15.045</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 03:19:15.045</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205294390</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon+quest]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 13:54:15.079</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 06:31:15.177</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207988615</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.sg/search?hl=en&q=jdbc+stages&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 21:11:15.019</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 21:11:15.019</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392775</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425459</id>
</element>
</collection>
<property name="version">68</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[pdzwart]]></property>
<property name="lastModificationDate">2009-09-30 18:44:19.069</property>
<property name="versionComment"><![CDATA[Updating CLI PostgreSQL commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209578690</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=jira+install+greenhopper&src=IE-SearchBox&FORM=IE8SRC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 02:59:15.044</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 02:59:15.044</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166005064</id>
<property name="position"/><property name="title"><![CDATA[Bamboo Builds in Eclipse]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037636</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:12:39.000</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-17 03:12:39.000</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207485225</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=atlassian+bamboo+run+setup+wizard+again&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 21:35:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 21:35:15.040</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206809260</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=hu&q=dragonslayers&start=20&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 12:22:15.118</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 12:22:15.118</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207456054</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=com.ubuntu%3Aen-US%3Aunofficial&hs=zby&q=confluence+%22jira+4%22+integration&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 21:57:15.088</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 21:57:15.088</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207480979</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&ei=HRgIS_75A42KnQPt240_&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=installing+atlassian+crowd,+jira,+confluence+on+tomcat&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 10:41:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 10:41:15.025</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206831134</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=atlassian+dragonquest&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 00:08:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 00:08:15.025</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206826798</id>
<property name="viewCount">6</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragons&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 16:57:15.024</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 22:47:15.059</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206211591</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.ch/search?hl=de&safe=off&client=firefox-a&rls=org.mozilla%3Ade%3Aofficial&q=bamboo+eclipse+plugin&btnG=Suche&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 08:46:15.507</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 08:46:15.507</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207988556</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=I8l&q=dragonquest+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 21:01:15.096</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 21:01:15.096</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392735</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425419</id>
</element>
</collection>
<property name="version">55</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 23:25:20.626</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209582872</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+dragons+challenge&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 09:02:15.252</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 09:02:15.252</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206801515</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon+challenge]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 01:23:15.059</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 09:06:15.120</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207372873</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&ei=Dq4CS8HhAcyQkQWUmMixAQ&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=bamboo+watched+plans+atlassian+eclipse+plugin&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 08:12:15.177</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 08:17:15.196</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210133518</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=atlassian+dragon+&go=&form=QBLH&qs=n]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 12:22:15.146</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 12:22:15.146</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209460646</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&channel=s&hl=en&source=hp&q=atlassian+dragon+slayer&btnG=Google+Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 03:02:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 03:02:15.062</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392724</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425408</id>
</element>
</collection>
<property name="version">54</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:52:00.654</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208048412</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.at/search?client=firefox-a&rls=org.mozilla%3Ade%3Aofficial&channel=s&hl=de&source=hp&q=across+single+sign+on&meta=&btnG=Google-Suche]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 04:45:15.072</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 04:45:15.072</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392683</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425367</id>
</element>
</collection>
<property name="version">49</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[pdzwart]]></property>
<property name="lastModificationDate">2009-09-30 18:50:37.326</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392688</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425372</id>
</element>
</collection>
<property name="version">51</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:49:03.578</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392687</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425371</id>
</element>
</collection>
<property name="version">50</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:47:37.014</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207372833</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=Download+jdk5x&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 08:08:15.468</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 08:08:15.468</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209561356</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=fisheye+setup]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 14:25:15.034</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 14:25:15.034</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392692</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425376</id>
</element>
</collection>
<property name="version">53</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:51:19.405</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392691</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425375</id>
</element>
</collection>
<property name="version">52</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:49:32.055</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206211659</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-US%3Aofficial&hs=xIu&q=confluence+atlas+external+jar&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 08:51:15.023</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 08:51:15.023</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206801568</id>
<property name="viewCount">11</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 01:32:15.055</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 01:44:15.038</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392667</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425351</id>
</element>
</collection>
<property name="version">53</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 23:04:24.220</property>
<property name="versionComment"><![CDATA[Charlie badge]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392668</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425352</id>
</element>
</collection>
<property name="version">54</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 21:57:01.290</property>
<property name="versionComment"><![CDATA[Added hosted SVN repo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520072</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding Another Atlassian Tool to your Suite

This section tells you about another Atlassian developer tool that you can add to your integrated suite, [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '{color:blue}*Main*{color}', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across Multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 and 3 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 and 3 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392672</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425356</id>
</element>
</collection>
<property name="version">55</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 21:58:21.080</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392673</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425357</id>
</element>
</collection>
<property name="version">56</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:12:38.700</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203396562</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203429022</id>
</element>
</collection>
<property name="version">65</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:59:26.501</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208477857</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.mx/search?hl=es&rlz=1T4DAMX_esMX300MX300&q=atlas+sso&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 11:39:15.103</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 11:39:15.103</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207381406</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://ffeathers.wordpress.com/2009/10/10/i-got-dragons-and-tweets-in-my-docs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 01:11:15.148</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 10:22:15.173</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209473708</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://mail.google.com/mail/?ui=2&view=bsp&ver=1qygpcgurkovy]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 16:19:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 16:19:15.028</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207389890</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fr/search?hl=fr&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=ShB&q=confluence+%22Setup+Standard+Database%22+postgres&btnG=Rechercher&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 13:51:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 13:51:15.025</property>
</object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660889</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628131</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660892</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628134</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660891</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628133</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206211427</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://almatters.wordpress.com/category/vendors/atlassian/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 08:36:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 01:45:15.055</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209557349</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.hr/search?hl=hr&q=FishEye++tool+to+connect+to+repository%2C+browse+code%2C&btnG=Tra%C5%BEi&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 08:34:15.181</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 08:34:15.181</property>
</object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660888</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628130</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660887</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628129</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210138965</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=atlassian+windows+7]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 22:28:15.043</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 22:28:15.043</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392645</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425329</id>
</element>
</collection>
<property name="version">77</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 21:03:49.216</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392641</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425325</id>
</element>
</collection>
<property name="version">76</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 20:54:50.577</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392639</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425323</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 01:59:11.642</property>
<property name="versionComment"><![CDATA[Minor wording tweak]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392636</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425320</id>
</element>
</collection>
<property name="version">75</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 20:30:11.447</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208953883</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-us%3AIE-SearchBox&rlz=1I7ADBR&q=bamboo+jira&aq=8&oq=bamboo+j&aqi=g10]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 16:47:15.154</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 16:47:15.154</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208052560</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=jira+install+greenhopper&aq=2&oq=jira+install&aqi=g7]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 11:43:15.147</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 11:43:15.147</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207381437</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://de.mg.bt.mail.yahoo.com/dc/blank.html?bn=211.6&.intl=de&.lang=en-GB]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 01:15:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 01:15:15.029</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392626</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425310</id>
</element>
</collection>
<property name="version">74</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 19:16:07.358</property>
<property name="versionComment"><![CDATA[Change SVN repo to Atlassian hosted]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209552567</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.kr/search?source=ig&hl=ko&rlz=1G1GGLQ_KOKR271&q=greenhopper+install&btnG=Google+%EA%B2%80%EC%83%89&meta=lr%3D&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 22:40:15.045</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 22:40:15.045</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209566180</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ch/search?q=install+jira+confluence+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 03:13:15.124</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 03:13:15.124</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209557381</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+assigned+to+me+shows+empty&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 08:36:15.190</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 08:37:15.360</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210128992</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.se/search?hl=sv&q=postgresql+%22jirauser%22&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 05:05:15.131</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 05:11:15.190</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209460719</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?hl=pl&client=firefox-a&rls=org.mozilla%3Apl%3Aofficial&hs=dgU&q=here+be+dragons+atlassian&btnG=Szukaj&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 03:11:15.064</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 03:11:15.064</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207372624</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragons&ei=UqoCS4mFNoPS-QaTzZkE&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 07:52:15.265</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 07:52:15.265</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207386052</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.be/search?q=atlassian+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 08:34:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 07:17:15.049</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209456361</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&safe=off&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=jkI&q=dragon+slayer+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 14:28:15.106</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 14:28:15.106</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209578788</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=install+greenhopper+jira&aq=0&oq=install+greenhopper&aqi=g1g-m2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 03:09:15.142</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 03:09:15.142</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209460768</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=jira+bamboo+integration&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 03:16:15.044</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 03:16:15.044</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210139051</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+indexing+4000+API&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-12 23:54:15.037</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-12 23:54:15.037</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392599</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425284</id>
</element>
</collection>
<property name="version">73</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[pdzwart]]></property>
<property name="lastModificationDate">2009-09-30 18:47:25.531</property>
<property name="versionComment"><![CDATA[Updating CLI PostgreSQL commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392585</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425271</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 01:38:50.462</property>
<property name="versionComment"><![CDATA[Added PostgreSQL CLI commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209473658</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft:en-us&ei=UikcS7SvJI7-tQOx5_mQDg&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=jira+bamboo+integration&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 16:00:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 16:00:15.028</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392589</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425273</id>
</element>
</collection>
<property name="version">48</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[pdzwart]]></property>
<property name="lastModificationDate">2009-09-30 18:48:52.769</property>
<property name="versionComment"><![CDATA[Updating CLI PostgreSQL commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392580</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425266</id>
</element>
</collection>
<property name="version">67</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 01:36:09.410</property>
<property name="versionComment"><![CDATA[Added PostgreSQL CLI commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392582</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425268</id>
</element>
</collection>
<property name="version">72</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 01:37:37.301</property>
<property name="versionComment"><![CDATA[Added PostgreSQL CLI commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209574871</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=opera&rls=en&q=jira+studio+bamboo&sourceid=opera&ie=utf-8&oe=utf-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 16:03:15.186</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 16:03:15.186</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207469620</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ee/search?q=integrating+jira++bamboo&ie=utf-8&oe=utf-8&aq=t&client=firefox-a&rlz=1R1GGGL_en-GB___EE352]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 01:05:15.155</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 01:05:15.155</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207481097</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=safari&rls=en&q=confluence+postgresql+linux+dragons&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 11:32:15.022</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 11:32:15.022</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203392573</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203425259</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 01:34:41.845</property>
<property name="versionComment"><![CDATA[Added PostgreSQL CLI commands]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209570094</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=how+to+install+plugin+directory+jira+4&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 08:57:15.220</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 08:57:15.220</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205687367</id>
<property name="viewCount">7</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=Here+be+dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 02:59:15.176</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 20:25:15.197</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207477259</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=atlassian+dragons+quest]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 13:54:15.240</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 13:54:15.240</property>
</object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660879</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628121</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660880</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628122</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660877</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628119</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660878</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628120</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660883</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628125</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660884</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628126</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660882</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628124</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210125662</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.jp/search?hl=ja&safe=off&client=firefox-a&rls=org.mozilla%3Aja-JP-mac%3Aofficial&hs=LGv&q=confluence+jira+portlet&btnG=%E6%A4%9C%E7%B4%A2&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 19:58:15.046</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 19:58:15.046</property>
</object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660875</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628117</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210133439</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=dragon+slayer+2&src=IE-SearchBox&adlt=strict]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 12:12:15.113</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 12:12:15.113</property>
</object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">218660876</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">218628118</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295339</id>
<property name="fileName"><![CDATA[JIRADashboard2Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391508</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:47:40.013</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:47:40.013</property>
<property name="fileSize">22099</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522147</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351665</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384361</id>
</element>
</collection>
<property name="version">70</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.903</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295336</id>
<property name="fileName"><![CDATA[JIRADashboardOnLogin.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:46:59.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:46:59.915</property>
<property name="fileSize">47474</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">200868805</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295337</id>
<property name="fileName"><![CDATA[PGAdminJIRADB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:51:07.066</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 18:51:07.066</property>
<property name="fileSize">48412</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522135</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295342</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardDefault.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:50:04.169</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:50:04.169</property>
<property name="fileSize">38897</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719871</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295343</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardStory.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:50:04.608</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:50:04.608</property>
<property name="fileSize">58288</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">215810447</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205293006</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=Tuu&q=atlassian+dragon&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 11:47:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 11:47:15.058</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295341</id>
<property name="fileName"><![CDATA[JIRADashboard3Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:50:07.530</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:50:07.530</property>
<property name="fileSize">47652</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719912</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295346</id>
<property name="fileName"><![CDATA[JIRATrustedApp.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:53:46.940</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:53:46.940</property>
<property name="fileSize">79413</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618768</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295347</id>
<property name="fileName"><![CDATA[PGAdminConfluenceDB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-15 23:31:28.733</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:31:28.733</property>
<property name="fileSize">50443</property>
<property name="comment"><![CDATA[Include crowduser in screenshot]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">200869355</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351657</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384353</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:48:11.885</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295344</id>
<property name="fileName"><![CDATA[GreenHopperTaskBoardv20.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:13:41.981</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:13:41.981</property>
<property name="fileSize">26300</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295345</id>
<property name="fileName"><![CDATA[JIRADashboardStage4.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:53:46.061</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:53:46.061</property>
<property name="fileSize">84074</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027086</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351659</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384355</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:58:05.286</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295350</id>
<property name="fileName"><![CDATA[ConfluenceExternalGadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:53:44.074</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:53:44.074</property>
<property name="fileSize">66098</property>
<property name="comment"/><property name="attachmentVersion">4</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618767</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351662</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384358</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-09 23:28:16.768</property>
<property name="versionComment"><![CDATA[Minor wording fix]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295351</id>
<property name="fileName"><![CDATA[FishEyeSourceView.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:57:24.738</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:57:24.738</property>
<property name="fileSize">63613</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014947</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295348</id>
<property name="fileName"><![CDATA[ConfluenceDemoSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:53:40.569</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:53:40.569</property>
<property name="fileSize">287898</property>
<property name="comment"/><property name="attachmentVersion">5</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014741</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295349</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:53:43.587</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:53:43.587</property>
<property name="fileSize">77745</property>
<property name="comment"/><property name="attachmentVersion">5</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014746</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351654</id>
<property name="position">9</property>
<property name="title"><![CDATA[Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384350</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:33:58.732</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351655</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384351</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[onevalainen]]></property>
<property name="lastModificationDate">2011-02-27 23:13:05.710</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204773004</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=jira+add+gadget+login+page&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 07:17:15.049</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 07:17:15.049</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351656</id>
<property name="position"/><property name="title"><![CDATA[Adding Users to your Atlassian Integrated Suite]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384352</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:18:14.734</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:56:28.567</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961722</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351641</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384337</id>
</element>
</collection>
<property name="version">82</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:14:52.489</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209554424</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=bamboo+eclipse+plugin&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:de:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 03:50:15.078</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 03:50:15.078</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709422</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676309</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 00:29:08.481</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351645</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384341</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.879</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351646</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384342</id>
</element>
</collection>
<property name="version">83</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.992</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">169345323</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">161054721</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="user"><![CDATA[cbang]]></property>
<property name="creationDate">2008-10-13 19:35:06.103</property>
<property name="lastModificationDate">2008-10-13 19:35:06.103</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295368</id>
<property name="fileName"><![CDATA[dragon_09.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:46:43.225</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:46:43.225</property>
<property name="fileSize">88249</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240913232</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945625</id>
</element>
</collection>
<property name="version">102</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-24 20:24:51.076</property>
<property name="versionComment"><![CDATA[Fixed typo and added name of UNIX startup script for Crowd]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295369</id>
<property name="fileName"><![CDATA[dragon_badge08.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:43.562</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:43.562</property>
<property name="fileSize">9102</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522255</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295370</id>
<property name="fileName"><![CDATA[dragon_badge09.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:56:50.073</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:56:50.073</property>
<property name="fileSize">9102</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446483</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._ 

In this stage you will add a Crucible project and connect it to your JIRA project. Then you will create a review, add a comment to the review and create a JIRA issue from that review comment. To consolidate your victory, you will add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

In this step you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/fisheye}}.
# Click the downward-pointing arrow next to your username ('charlie') then click '*Administration*' in the dropdown menu.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and select your JIRA server in the dropdown menu.
# Click '*Create*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible Dragons project linked to JIRA Dragons project+_ 

!CrucibleJIRAProjectEntityLink-v6.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and add a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Find changeset '0:922fd9308885', the first changeset in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the dropdown menu.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' on the warning screen. The 'DRA-1' review screen will appear.
# Click '*App.java*' under 'src' in the file tree on the left. The code for this file will appear in the right-hand panel.
# Scroll down to line 11 in the code and click the '*11*'. 
# A text area will open for you to enter a comment. Add a comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Select the '*Defect*' checkbox.
# Click '*Post*'. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Go to JIRA and open your 'DRA-1' issue. Click the 'Reviews' tab. The tab shows the reviews related to the issue, meaning the reviews involving changesets related to the issue.


+_Screenshot 2 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab-v6.png|thumbnail!


h2. Step 3. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it. You will create a JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to JIRA and view your '*DRA-1*' issue.
# Click '*Reopen issue*'.
# The 'Reopen Issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible dashboard.
# Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# The review details screen will appear. Click '*This comment does not mention dragons*' in the '*Latest Comment*' column.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Click '*Assign to Me*'.
# Click '*Create*'. The key of your new issue (DRA-5) will be displayed in the review comment, with a status of 'Open'. 
# Click the issue key, '*DRA-5*'. The issue will open in JIRA.
# Click your browser's back button to see your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-5*'. The issue will open in JIRA with a status of 'Closed'.
{panel}

+_Screenshot 3 (click to enlarge): Closed JIRA issue displayed in a review comment_+

!CrucibleReviewCommentJIRAIssue-v6.png|thumbnail!


h2. Step 4. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Recent Changesets' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Out of the Crucible. Completed stage 6 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo|Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207484908</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.sg/search?q=jira+studio+hosting&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-22 19:55:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 19:55:15.029</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295372</id>
<property name="fileName"><![CDATA[dragon_badge08.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:46:52.613</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:46:52.613</property>
<property name="fileSize">6451</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522255</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208056749</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.at/search?q=Atlassian+Dragon+Quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 04:18:15.023</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 04:18:15.023</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295373</id>
<property name="fileName"><![CDATA[dragon_badge09.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:46:53.496</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:46:53.496</property>
<property name="fileSize">10739</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">228295370</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210128953</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/search?q=%23AtlassianDragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 05:01:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 05:01:15.031</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240913226</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945620</id>
</element>
</collection>
<property name="version">101</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:21:52.657</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209453178</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&q=here+be+dragons+Atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 09:32:15.356</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 09:32:15.356</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295353</id>
<property name="fileName"><![CDATA[FishEyeDashboard.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:57:24.036</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:57:24.036</property>
<property name="fileSize">59808</property>
<property name="comment"/><property name="attachmentVersion">4</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014802</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295352</id>
<property name="fileName"><![CDATA[PGAdminFishEyeDB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-16 21:43:47.861</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 21:43:47.861</property>
<property name="fileSize">51322</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014748</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">233149079</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Partial JIRA Setup]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">233181373</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 19:19:19.447</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:04:05.667</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391407</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295355</id>
<property name="fileName"><![CDATA[JIRAIssueSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:59:52.589</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:59:52.589</property>
<property name="fileSize">108779</property>
<property name="comment"/><property name="attachmentVersion">4</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015033</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295354</id>
<property name="fileName"><![CDATA[FishEyeDatabaseSetup.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-17 20:22:29.624</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-17 20:22:29.624</property>
<property name="fileSize">66676</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014792</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295357</id>
<property name="fileName"><![CDATA[JIRADashboardStage6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:59:51.532</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:59:51.532</property>
<property name="fileSize">93510</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027097</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295356</id>
<property name="fileName"><![CDATA[JIRAProjectSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:59:55.135</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:59:55.135</property>
<property name="fileSize">88415</property>
<property name="comment"/><property name="attachmentVersion">4</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015034</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295359</id>
<property name="fileName"><![CDATA[BambooJIRAIssues.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:33.709</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:33.709</property>
<property name="fileSize">43456</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375301</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295358</id>
<property name="fileName"><![CDATA[BambooHomePage.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:32.657</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:32.657</property>
<property name="fileSize">40791</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375169</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295361</id>
<property name="fileName"><![CDATA[PGAdminBambooDB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-22 20:40:41.639</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-22 20:40:41.639</property>
<property name="fileSize">51915</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015110</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295360</id>
<property name="fileName"><![CDATA[JIRAIssueBuild.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:35.755</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:35.755</property>
<property name="fileSize">63730</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375361</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295363</id>
<property name="fileName"><![CDATA[BambooBuildInProgress1.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:38.965</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:38.965</property>
<property name="fileSize">34876</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295362</id>
<property name="fileName"><![CDATA[BambooBuildComplete1.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:36.965</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:36.965</property>
<property name="fileSize">52517</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241009147</id>
<property name="fileName"><![CDATA[ConfluenceHomePage-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-26 01:06:38.354</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-26 01:06:38.354</property>
<property name="fileSize">62974</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295365</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful-annotated.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:30.128</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:30.128</property>
<property name="fileSize">133472</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375303</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295364</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:29.115</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:29.115</property>
<property name="fileSize">50392</property>
<property name="comment"/><property name="attachmentVersion">4</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375298</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295367</id>
<property name="fileName"><![CDATA[dragon_08.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 21:39:38.260</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 21:39:38.260</property>
<property name="fileSize">82887</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522233</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">228295366</id>
<property name="fileName"><![CDATA[JIRADashboardStage9.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:39:55.234</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:39:55.234</property>
<property name="fileSize">122073</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209473569</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?rlz=1C1GGLS_plDE353DE353&sourceid=chrome&ie=UTF-8&q=jira+bamboo+integration]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 15:19:15.052</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 15:19:15.052</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205293072</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://search.twitter.com/search?q=twitter]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 11:52:15.189</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 11:52:15.189</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004761</id>
<property name="position">2</property>
<property name="title"><![CDATA[News, Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037358</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:56:53.398</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004762</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037359</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:13:26.202</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">241053282</id>
<property name="destinationPageTitle"><![CDATA[//www.first.org/cvss/cvss-guide.html]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="creatorName"><![CDATA[edawson]]></property>
<property name="creationDate">2011-05-23 20:25:59.619</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2011-05-23 20:25:59.619</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208944219</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&client=firefox-a&rls=org.mozilla:en-US:official&hs=Rf5&ei=JCQWS83TM9GgkQXeh_GMBw&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=Installing+GreenHopper+in+JIRA&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 02:25:15.257</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 02:25:15.257</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208004392</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257321443&]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 05:06:15.202</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 05:06:15.202</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210139396</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cn/search?hl=zh-CN&newwindow=1&q=jira+bamboo+integrate&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-13 03:51:15.075</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 03:51:15.075</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241009051</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardStory-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-24 19:37:31.365</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-24 19:37:31.365</property>
<property name="fileSize">37771</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208048078</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.facebook.com/jason.hinch?ref=nf]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 04:19:15.135</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 04:19:15.135</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208004423</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.sg/search?q=With+SSO+you+use+a+web+single+sign+on+to+sign+into+all+logins&btnG=Search&hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-US%3Aofficial&hs=voa&sa=2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 05:10:15.121</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 05:10:15.121</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208929083</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=jira+4.0+issue+wont+display+in+task+board&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 16:44:15.160</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 16:44:15.160</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207996645</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=FishEye+Gadget]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 11:26:15.124</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 11:26:15.124</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240913283</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945674</id>
</element>
</collection>
<property name="version">103</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-24 20:29:09.639</property>
<property name="versionComment"><![CDATA[Direction of slash]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208470934</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=+dragon+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 00:27:15.088</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 00:27:15.088</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241009087</id>
<property name="fileName"><![CDATA[ConfluenceUserDirectories.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-24 23:33:55.299</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-24 23:33:55.299</property>
<property name="fileSize">55741</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207356615</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=bamboo+jira+integration&aq=1&oq=bamboo+jir&aqi=g3g-m1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 03:10:15.023</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 03:10:15.023</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209577400</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 23:41:15.089</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 23:41:15.089</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351531</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384227</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-22 00:11:01.466</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 22:23:12.282</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791031</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351532</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384228</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:38.123</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:08:21.026</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411670</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207467800</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.nz/search?q=bamboo+eclipse+plugin&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 18:05:15.109</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 18:05:15.109</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351533</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384229</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-28 21:14:48.809</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:09:38.764</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411672</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206817634</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=Atlassian%E2%80%99s+JIRA+Studio+hosting&sourceid=ie7&rls=com.microsoft:en-us:IE-SearchBox&ie=&oe=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 07:02:15.126</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 07:02:15.126</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351535</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384231</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-02 02:34:09.832</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:09:00.333</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414394</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207379566</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=how+to+install+a+fisheye+license%3F&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 18:39:15.170</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 18:39:15.170</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209562004</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=atlassian+dragon+slayer&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 15:28:15.224</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 15:28:15.224</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209569846</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://confluence.seapine.com/display/CI/2009+Starter+License+Promos]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 08:42:15.073</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 08:42:15.073</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">237568030</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">237666332</id>
</element>
</collection>
<property name="version">99</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:27:55.902</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207456624</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.facebook.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 00:10:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 05:24:15.106</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208056863</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=integrating+bamboo+and+jira&product=&resource=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 04:30:15.087</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 04:30:15.087</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351528</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-GH]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384224</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-21 22:44:42.946</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 22:22:17.589</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791000</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271737</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304109</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:48:53.789</property>
<property name="versionComment"><![CDATA[Updated for GreenHopper 4.4]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351527</id>
<property name="position"/><property name="title"><![CDATA[_DragonsVersionNumber-JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384223</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-10 21:46:14.003</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:10:16.586</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">226787473</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393854</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426519</id>
</element>
</collection>
<property name="version">81</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:55:05.182</property>
<property name="versionComment"><![CDATA[Minor wording tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271735</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304107</id>
</element>
</collection>
<property name="version">73</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:44:06.283</property>
<property name="versionComment"><![CDATA[Updated for JIRA 4.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351571</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384267</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:47:49.556</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203398694</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203431123</id>
</element>
</collection>
<property name="version">49</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:49:11.099</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351575</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384271</id>
</element>
</collection>
<property name="version">49</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:15:42.210</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351576</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384272</id>
</element>
</collection>
<property name="version">68</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-01 20:55:04.908</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351573</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384269</id>
</element>
</collection>
<property name="version">79</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:14:52.588</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207387232</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?q=atlassian+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 09:57:15.101</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 09:57:15.101</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037345</id>
<property name="body"><![CDATA[We hope this documentation space will become your first port of call for information on making your [Atlassian applications|http://www.atlassian.com] work together.

h6. Introducing the Atlassian Integration Guide

Using our open API and scores of plugins, your Atlassian applications will soon put the information you need at your fingertips when you need it.

The [integration points|Integration Points] show the many different ways the applications work together and how you can make it happen.

Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.

{color:green}*New:*{color} Take a look at the [Application Links|Application Links (AppLinks)] plugin.

h6. Watch this Space!

This documentation is currently under development. We plan to add more information about the existing integration points as soon as possible. We will keep adding new integration points as the software becomes available.]]></property>
<property name="content" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166004748</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351551</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384247</id>
</element>
</collection>
<property name="version">81</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:31:52.929</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351556</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Database]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384252</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 18:50:52.214</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:16:42.782</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391389</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351555</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384251</id>
</element>
</collection>
<property name="version">78</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:06:12.023</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393878</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426543</id>
</element>
</collection>
<property name="version">82</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[pdzwart]]></property>
<property name="lastModificationDate">2009-10-02 01:17:10.039</property>
<property name="versionComment"><![CDATA[Changed the example FECRU directory for Linux.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206826390</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=fisheye+license+config.xml&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 14:00:15.045</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 14:00:15.045</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351558</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Partial JIRA Setup]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384254</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 19:19:19.447</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:17:51.294</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391407</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351557</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384253</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:03:53.349</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:03:53.349</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391508</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351598</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384294</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.415</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206800355</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+here+be+dragins&rls=com.microsoft:en-au&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 21:28:15.063</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 21:28:15.063</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375169</id>
<property name="fileName"><![CDATA[BambooHomePage.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:30.964</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:30.964</property>
<property name="fileSize">43384</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522846</id>
<property name="fileName"><![CDATA[JIRADashboardOnLogin.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-08 21:11:41.229</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:11:41.229</property>
<property name="fileSize">54641</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">200868805</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208944340</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=integrating+Jira+with+bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 02:38:15.191</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 02:38:15.191</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351595</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384291</id>
</element>
</collection>
<property name="version">105</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:37:27.566</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168002421</id>
<property name="position">2</property>
<property name="title"><![CDATA[Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168067850</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:13:26.224</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208008474</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=atlassian+dragon+slayer]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 10:39:15.396</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 10:39:15.396</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351606</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384302</id>
</element>
</collection>
<property name="version">100</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.772</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">234881081</id>
<property name="fileName"><![CDATA[JIRADashboardStage4-v5.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-09 17:56:32.845</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-09 17:56:32.845</property>
<property name="fileSize">78308</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351607</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384303</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.635</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205686518</id>
<property name="viewCount">5</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/news/2009/10/integrating_atlassian_apps_and_slaying_dragons.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 01:09:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-22 20:51:15.114</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">224397306</id>
<property name="position"/><property name="title"><![CDATA[Plugin Development]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">224429846</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-10-30 00:11:16.567</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-10-30 00:18:56.250</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209473437</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1C1GGLS_enUS355US355&ei=hREcS6qDN5-ltgfv5fDjAw&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=guide+to+dragon+slayers+2&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 14:21:15.066</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 14:21:15.066</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210128725</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.ua/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+slayer&ei=tCAiS8HzIKeGnAPizvTXBw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 04:37:15.200</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 04:41:15.031</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351604</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384300</id>
</element>
</collection>
<property name="version">99</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:23:38.741</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351581</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384277</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.400</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208933717</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.my/search?q=atlassian+dragon+quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 05:12:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 05:12:15.054</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351580</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384276</id>
</element>
</collection>
<property name="version">50</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:32:17.459</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208000445</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=install+fisheye+fisheye_inst&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 18:57:15.098</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 18:57:15.098</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351590</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384286</id>
</element>
</collection>
<property name="version">104</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-24 21:52:57.699</property>
<property name="versionComment"><![CDATA[Fixed typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208933712</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?q=atlassian+dragonslayer&rls=com.microsoft:pl&ie=UTF-8&oe=UTF-8&startIndex=&startPage=0]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 05:11:15.140</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 05:11:15.140</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351632</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384328</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.477</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207379609</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=dragon+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 18:46:15.074</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 18:46:15.074</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207476505</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/url?sa=t&source=web&ct=res&cd=1&ved=0CAkQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon&ei=aeAGS8bINc6sngfl97DKCw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 12:31:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 12:31:15.040</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351625</id>
<property name="position"/><property name="title"><![CDATA[Running Bamboo in a Console Window]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384321</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 23:22:19.918</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:36:14.336</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209581484</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.cn/search?hl=zh-CN&newwindow=1&q=jdk+1.6+url+enter&start=20&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 07:17:15.127</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 07:17:15.127</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351635</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384331</id>
</element>
</collection>
<property name="version">69</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:35:08.642</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351633</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384329</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.434</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454238</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8060/fisheye]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351614</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384310</id>
</element>
</collection>
<property name="version">74</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:26:58.876</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241008958</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardDefault-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-23 22:48:23.547</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 22:48:23.547</property>
<property name="fileSize">46530</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454237</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454240</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8060/fisheye]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454239</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8060/fisheye]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">234881078</id>
<property name="fileName"><![CDATA[ConfluenceHomePage.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-03-09 17:18:34.080</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-03-09 17:18:34.080</property>
<property name="fileSize">55248</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454242</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454241</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8060/fisheye]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209573150</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&q=atlassian+bamboo+integration+with+MS+dev+studio&meta=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 13:21:15.220</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 13:21:15.220</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454244</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=The dragon is swift and strong but so am I. Completed stage 5 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454243</id>
<property name="destinationPageTitle"><![CDATA[Integrating JIRA with FishEye]]></property>
<property name="destinationSpaceKey"><![CDATA[JIRA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454246</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351622</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384318</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 21:28:59.800</property>
<property name="versionComment"><![CDATA[Fixed the tweet due to change in Twitter API]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454245</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 6 - Get JIRA and Crucible Talking]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:43:53.465</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:43:53.465</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241008961</id>
<property name="fileName"><![CDATA[GreenHopperTaskBoard-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-05-24 00:39:39.427</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-24 00:39:39.427</property>
<property name="fileSize">34165</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351620</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 5 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384316</id>
</element>
</collection>
<property name="version">75</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:41:45.882</property>
<property name="versionComment"><![CDATA[Publishing Dragons v6]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208004273</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ro/search?q=install+bamboo+server&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 04:57:15.147</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 04:57:15.147</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351618</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384314</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:41:45.725</property>
<property name="versionComment"><![CDATA[Changed forums link to answers]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210117494</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?srch=106&FORM=AS6&q=jira+dragons+lair]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 05:34:15.179</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 05:34:15.179</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215485112</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215517486</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:13:54.787</property>
<property name="versionComment"><![CDATA[Changed url from trim to bitly]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209573257</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://mail.google.com/a/indigorose.com/?ui=2&view=bsp&ver=1qygpcgurkovy]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 13:29:15.183</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 13:29:15.183</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215485107</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215517481</id>
</element>
</collection>
<property name="version">72</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:13:29.813</property>
<property name="versionComment"><![CDATA[Changed url from trim to bitly]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168002724</id>
<property name="position">2</property>
<property name="title"><![CDATA[Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168068118</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-09-10 19:50:46.038</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206826308</id>
<property name="viewCount">6</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257320238]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 13:22:15.050</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 14:21:15.284</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207372303</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+jira+studio+bamboo&rls=com.microsoft:en-us&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 07:27:15.216</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 07:27:15.216</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210128661</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+here+be+dragons&ei=UR8iS7qhDZGk4QavhJ3mCQ&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 04:31:15.240</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 04:31:15.240</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208933660</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=safari&rls=en&q=here+be+dragons+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 05:06:15.124</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 05:06:15.124</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208929238</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=jira+dragonslayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 17:08:15.033</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 17:08:15.033</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616753</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649506</id>
</element>
</collection>
<property name="version">76</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:11:38.937</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207372350</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=svn%2C+bamboo+integration&sourceid=ie7&rls=com.microsoft:en-us:IE-SearchBox&ie=&oe=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 07:31:16.020</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 07:31:16.020</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241698165</id>
<property name="fileName"><![CDATA[JIRADashboardStage7-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-06 23:40:15.477</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-06 23:40:15.477</property>
<property name="fileSize">104973</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">233148821</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">233181168</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:38:13.592</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-02-28 18:19:24.401</property>
<property name="versionComment"><![CDATA[Fixed the JDK version]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">165085310</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Development Platform|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:]
* [REST APIs|REST:]
* [Confluence|CONFDEV:]
* [JIRA|JIRA:JIRA Development Hub]
* [GreenHopper|GHDEV:]
* [Bamboo|BAMBOODEV:]
* [Crowd|CROWDDEV:]
* [FishEye/Crucible|FECRUDEV:]
* [Clover|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">233148817</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">233181164</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:38:13.592</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 21:51:57.710</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207984799</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla:en-US:official&hs=ocy&q=+site:confluence.atlassian.com+integrate+jira+bamboo&ei=wdMKS8KpB82UtgfBnpzACg&sa=X&oi=manybox&resnum=2&ct=all-results&ved=0CAIQqAQwAg]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 12:26:15.395</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 12:26:15.395</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204768381</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=L_v4SuukHMXakAXJnq2-Cw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 23:34:15.065</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 23:34:15.065</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209473272</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.es/search?hl=es&client=firefox-a&rls=org.mozilla:es-ES:official&hs=Jkh&ei=0wIcS5G5LOTKjAfYlKz4Aw&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=JIRA+confluence+Here+be+dragons&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 13:16:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 13:16:15.021</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209462156</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.nl/search?q=Atlassian+suite&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:nl:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 05:36:15.180</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 05:36:15.180</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215485117</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215517491</id>
</element>
</collection>
<property name="version">86</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-30 17:52:02.427</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454294</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961724</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.750</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.750</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206804858</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragon+slayar+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 06:53:15.154</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 06:53:15.154</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215485127</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215517501</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:16:22.869</property>
<property name="versionComment"><![CDATA[Changed tweet url from trim to bitly]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215485126</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215517500</id>
</element>
</collection>
<property name="version">70</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-30 22:48:12.269</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208948870</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&source=hp&q=single+sign+on+across+web+pages&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 08:58:15.289</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 08:58:15.289</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215485123</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215517497</id>
</element>
</collection>
<property name="version">64</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:15:33.473</property>
<property name="versionComment"><![CDATA[Changed tweet url from trim to bitly]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208953179</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enUS342US343&sourceid=chrome&ie=UTF-8&q=JIRA+Studio+and+Bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 15:24:15.212</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 15:24:15.212</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">215485122</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">215517496</id>
</element>
</collection>
<property name="version">87</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-10 21:14:52.967</property>
<property name="versionComment"><![CDATA[Changed tweet url from trim to bitly]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454403</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8060/fisheye]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.873</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.873</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">244351464</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Create JIRA Project]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">244384165</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:00:44.967</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-23 20:35:16.010</property>
<property name="versionComment"><![CDATA[Fixed typos]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454404</id>
<property name="destinationPageTitle"><![CDATA[JIRA Integration in Crucible]]></property>
<property name="destinationSpaceKey"><![CDATA[CRUCIBLE]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.873</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.873</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208948880</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=jira+bamboo+integration&aq=0&oq=jira+bamboo+&aqi=g4]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 08:59:15.235</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 08:59:15.235</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454405</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8080/]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.873</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.873</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454406</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=Out of the Crucible. Completed stage 6 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.873</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.873</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204768416</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=jira+greenhopper+key]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-09 23:38:15.085</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-09 23:38:15.085</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271805</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304167</id>
</element>
</collection>
<property name="version">88</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-12 23:24:29.578</property>
<property name="versionComment"><![CDATA[Fixed small typo]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454407</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.873</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.873</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207471728</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.ru/search?hl=ru&newwindow=1&q=jira+greenhopper+integration&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 04:59:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 04:59:15.040</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271806</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304168</id>
</element>
</collection>
<property name="version">89</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 22:45:27.475</property>
<property name="versionComment"><![CDATA[Updated Confluence version from 3.2 to 3.2.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454408</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.873</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.873</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">232556816</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">232589460</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:26:44.290</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208065220</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://search.atlassian.com/search.action;jsessionid=5BE67460F9C516F285DC0C8E18FEB11B?q=dragon+slayer&jiraVersion=v3.13.2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 04:47:15.071</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 04:47:15.071</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271809</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304171</id>
</element>
</collection>
<property name="version">88</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:56:34.714</property>
<property name="versionComment"><![CDATA[Updated for FishEye 2.2.1]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">232556818</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">232589461</id>
</element>
</collection>
<property name="version">61</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[doflynn]]></property>
<property name="lastModificationDate">2011-02-15 23:00:07.899</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271812</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304174</id>
</element>
</collection>
<property name="version">71</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:01:31.853</property>
<property name="versionComment"><![CDATA[Updated for Bamboo 2.5.3 etc]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244454402</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:46:10.873</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:46:10.873</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004515</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037139</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:23:01.021</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004513</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037137</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-12 20:26:18.132</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206799978</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?rlz=1C1GGLS_enAU348AU348&sourceid=chrome&ie=UTF-8&q=bamboo+jira+integration]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 20:04:15.112</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 20:04:15.112</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004514</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037138</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:22:15.654</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209565522</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.nl/search?q=atlassian+bamboo+fisheye&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 01:54:15.099</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 01:54:15.099</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004519</id>
<property name="position"/><property name="title"><![CDATA[News, Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037143</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:18:05.983</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004520</id>
<property name="position"/><property name="title"><![CDATA[News, Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037144</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:28:56.418</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209554241</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ch/search?client=firefox-a&rls=org.mozilla%3Ade%3Aofficial&channel=s&hl=de&source=hp&q=eclipse+atlassian&meta=&btnG=Google-Suche]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 03:32:15.400</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 03:32:15.400</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375296</id>
<property name="fileName"><![CDATA[BambooBuildInProgress.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 02:03:27.229</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 02:03:27.229</property>
<property name="fileSize">61726</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375298</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:43.970</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:43.970</property>
<property name="fileSize">42557</property>
<property name="comment"/><property name="attachmentVersion">5</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271828</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304190</id>
</element>
</collection>
<property name="version">90</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 22:45:57.738</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375299</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-25 00:12:03.196</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-25 00:12:03.196</property>
<property name="fileSize">47495</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375298</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271830</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304192</id>
</element>
</collection>
<property name="version">89</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 22:48:38.628</property>
<property name="versionComment"><![CDATA[Updated FishEye version from 2.2.1 to 2.2.3]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375301</id>
<property name="fileName"><![CDATA[BambooJIRAIssues.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:31.112</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:31.112</property>
<property name="fileSize">33354</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">218271832</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">218304194</id>
</element>
</collection>
<property name="version">72</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-27 22:50:34.088</property>
<property name="versionComment"><![CDATA[Updated Bamboo version from 2.5.3 to 2.5.5]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004509</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037133</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:13:49.510</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375303</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful-annotated.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:44.956</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:44.956</property>
<property name="fileSize">74328</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209577129</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+integration+with+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 22:31:15.103</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 22:31:15.103</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208047839</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.pl/search?q=bamboo+eclipse&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 04:01:15.101</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 04:01:15.101</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414380</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446912</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 01:11:42.291</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414378</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446910</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-01 18:04:51.391</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414388</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446918</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:24:52.409</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414387</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446917</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 01:17:20.748</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207467910</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=%22here+be+dragons%22+site%3Aatlassian.com&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 18:25:15.035</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 18:25:15.035</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414392</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446922</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:31:12.428</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">227414391</id>
<property name="position"/><property name="title"><![CDATA[REV4 - Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">227446921</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-02 02:25:11.201</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">232556791</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">232589435</id>
</element>
</collection>
<property name="version">60</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:50:44.070</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496133</id>
<property name="position"/><property name="title"><![CDATA[Copy of _InclusionsLibrary]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528828</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:17:25.806</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:17:25.806</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496132</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496134</id>
<property name="position"/><property name="title"><![CDATA[Home]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528829</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.073</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210132968</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragon+lair+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 11:18:15.310</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 11:18:15.310</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496137</id>
<property name="position"/><property name="title"><![CDATA[Copy of TreeNavigation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528831</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:19:23.444</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:19:23.444</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496136</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203394309</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426930</id>
</element>
</collection>
<property name="version">83</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[pdzwart]]></property>
<property name="lastModificationDate">2009-10-02 02:46:24.207</property>
<property name="versionComment"><![CDATA[PostgreSQL URL missing essential colon.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">168002835</id>
<property name="position"/><property name="title"><![CDATA[JIRA Bamboo Integration]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">168068220</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:19.368</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2008-08-28 02:07:26.807</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496151</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528844</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:18:33.244</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209457942</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=RMg&q=Setup+Fisheye+on+Jira+as+Trusted+Application&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 17:35:15.059</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 17:35:15.059</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037634</id>
<property name="body"><![CDATA[This page introduces the Atlassian Connector for Eclipse and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{excerpt}
The Atlassian Connector for Eclipse displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your [Eclipse|http://www.eclipse.org/] development environment. 
{excerpt}

+_Screenshot: Bamboo Watched Plans and Build Log in Eclipse_+
\\
\\
!IDEPLUGIN:_Flagship Image for Eclipse Bamboo^EclipseBuildLog.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for Eclipse|nopanel=true}

h2. Components

The Atlassian Connector for Eclipse is a plugin that you will install and configure in [Eclipse|http://www.eclipse.org/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for Eclipse Plugin|nopanel=true}

h2. Documentation

Please refer to the [documentation for the Atlassian Connector for Eclipse|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian Connector for Eclipse|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446923</id>
<property name="body"><![CDATA[{excerpt}3.1.3{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414394</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208470772</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&safe=off&client=firefox-a&rls=org.mozilla:en-GB:official&hs=LBK&ei=IFsTS7-IGdmZkQWhkYWjBw&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=installing+greenhopper+jira+4&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 23:42:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 23:42:15.082</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375372</id>
<property name="fileName"><![CDATA[JIRADashboard6Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:10:14.617</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:10:14.617</property>
<property name="fileSize">65406</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037642</id>
<property name="body"><![CDATA[This page introduces the Atlassian Connector for IntelliJ IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{excerpt}
The Atlassian Connector for IntelliJ IDEA integrates [JIRA|http://www.atlassian.com/software/jira] issues into your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. 
{excerpt}

+_Screenshot: JIRA Issues in an IDEA Tool Window_+
\\
\\
!IDEPLUGIN:_Flagship Image for IDEA JIRA^JIRAWithContextMenu.png|border=1,bordercolor=gray!
h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian Connector for IntelliJ IDEA is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the documentation for the [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian Connector for IntelliJ IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005070</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209565730</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 02:22:15.292</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 02:22:15.292</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375374</id>
<property name="fileName"><![CDATA[JIRADashboard3Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-15 23:09:30.714</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:09:30.714</property>
<property name="fileSize">42102</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719912</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037640</id>
<property name="body"><![CDATA[This page introduces the Atlassian Connector for IntelliJ IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description

{excerpt}
The Atlassian Connector for IntelliJ IDEA displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. 
{excerpt}

+_Screenshot: Bamboo Builds in an IDEA Tool Window_+
\\
\\
!IDEPLUGIN:_Flagship Image for IDEA Bamboo^BambooFailedTests.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian Connector for IntelliJ IDEA is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the documentation for the [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian Connector for IntelliJ IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005068</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208000129</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=dragon+confluence&ei=pXMMS4iBFsyGkAX5kdmWBA&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 18:01:15.153</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 18:01:15.153</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375375</id>
<property name="fileName"><![CDATA[JIRADashboard4Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-21 23:57:23.456</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-21 23:57:23.456</property>
<property name="fileSize">67454</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015038</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037646</id>
<property name="body"><![CDATA[This page introduces the Atlassian Connector for IntelliJ IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description

{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}{excerpt}
The Atlassian Connector for IntelliJ IDEA lets you work with your [Crucible|http://www.atlassian.com/software/crucible] code reviews within your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. {excerpt}
_{+}Screenshot: Crucible Reviews in an IDEA Tool Window{+}_\\
\\ !IDEPLUGIN:_Flagship Image for IDEA Crucible^CrucibleReview.png|border=1,bordercolor=gray!

h2. Full Description

{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian Connector for IntelliJ IDEA is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix

{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the documentation for the [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian Connector for IntelliJ IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208474684</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=install+fisheye+windows&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 07:30:15.081</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 07:30:15.081</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207379840</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&safe=off&client=safari&rls=en&q=postgres+jdbc+configuration+jira+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 19:30:15.067</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 19:30:15.067</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202375361</id>
<property name="fileName"><![CDATA[JIRAIssueBuild.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:37:34.820</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:37:34.820</property>
<property name="fileSize">63811</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208953325</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enUS342US343&sourceid=chrome&ie=UTF-8&q=get+bamboo+integration+jira+studio]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 15:39:15.043</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 15:39:15.043</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004751</id>
<property name="position">2</property>
<property name="title"><![CDATA[News, Links and Resources]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037348</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 02:18:05.983</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:29:43.895</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206210979</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=installing+bamboo+in+jira&ie=utf-8&oe=utf-8&aq=t&rls=org.gentoo:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 08:02:15.113</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 08:02:15.113</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616648</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649408</id>
</element>
</collection>
<property name="version">70</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-05 00:26:55.855</property>
<property name="versionComment"><![CDATA[Fixed instruction for going to FishEye admin screen]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004746</id>
<property name="position"/><property name="title"><![CDATA[JIRA Studio Installation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037343</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-05 18:33:16.435</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-05 18:33:16.435</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209473144</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://mail.google.com/mail/?shva=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 12:17:15.085</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 12:17:15.085</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209464463</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?hl=nl&q=gadgets+on+stage&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 09:16:15.326</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 09:16:15.326</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004760</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037357</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:00:05.636</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004755</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037352</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 02:24:06.670</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208052141</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=de&client=safari&rls=en&ei=Rq8OS42fNM2e_Aak0KDkBA&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CBIQBSgA&q=dragon+atlassian&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 10:40:15.079</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 10:40:15.079</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208940331</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=jira+studio+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 15:06:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 21:19:15.017</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">167183601</id>
<property name="position"/><property name="title"><![CDATA[Crucible Reviews in IDEA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">167216175</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-17 03:35:57.249</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-22 01:15:18.166</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005074</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210139543</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitter.com/cheolhominale]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-13 05:12:15.105</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 05:12:15.105</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209462287</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.tr/search?hl=tr&source=hp&q=svn+jira+bamboo+integration&btnG=Google%27da+Ara&meta=&cts=1259927334849&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 05:49:15.226</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 05:49:15.226</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208008742</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://search.yahoo.com/search;_ylt=A0oGkw_WYg1LvSQBzIJXNyoA?p=create+jirauser&fr2=sb-top&fr=yfp-t-701&sao=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 11:04:15.142</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 11:04:15.142</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616680</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649439</id>
</element>
</collection>
<property name="version">71</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-26 20:30:11.768</property>
<property name="versionComment"><![CDATA[Corrected the link name for changing the application name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209464434</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=Atlassian+Here+Be+Dragons&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 09:14:15.237</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 09:14:15.237</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209473166</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.at/search?q=atlassian+quest&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 12:23:15.061</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 12:23:15.061</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218310746</id>
<property name="body"><![CDATA[Deploying multiple Atlassian applications in a single Tomcat container is *not supported*. Upgrading any of the applications (even for point releases) is likely to break it. There are also a number of known issues with this configuration:
* You may not be able to start up all of the applications in the container, due to class conflicts (in 3rd party libraries bundled with our application) that result from the Atlassian applications sharing a single JVM in the Tomcat container.
* You will not be able to determine the startup order of the applications. Hence, you may experience problems such as JIRA starting before Crowd, rather than vice versa.
* Memory problems are also common as one application may allocate all of the memory in the Tomcat JVM to itself, starving the other applications.

We also recommend that you do not deploy multiple Atlassian applications in a single Tomcat container for a number of practical reasons:
* You will need to shut down Tomcat to upgrade any application.
* If one application crashes, the other applications running in the Tomcat container will be inaccessible.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218279135</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616690</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649449</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-26 22:26:28.475</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213058111</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213090793</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-27 16:27:14.510</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206210930</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=installing+greenhopper+in+jira&ie=utf-8&oe=utf-8&aq=t&rls=org.gentoo:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 07:59:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 07:59:15.056</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616695</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649454</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-26 22:31:28.065</property>
<property name="versionComment"><![CDATA[Minor grammatical tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208060939</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/jgibbs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 12:48:15.020</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 12:48:15.020</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206813624</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAcQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+slayer&ei=T9z8SqrxHIK6swOFndmHCw&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 22:11:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 22:11:15.027</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">229181012</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">229213518</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:57:43.860</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616686</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649445</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-26 22:26:13.086</property>
<property name="versionComment"><![CDATA[Fixed instruction for going to FishEye admin screen]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616685</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649444</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 20:10:19.053</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210132819</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=jira+studio+bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 11:05:15.212</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 11:05:15.212</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213058091</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213090773</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[jens@atlassian.com]]></property>
<property name="lastModificationDate">2010-01-14 16:20:50.277</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">238616700</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">238649459</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-26 22:41:13.802</property>
<property name="versionComment"><![CDATA[Fixed instruction for going to FishEye admin screen]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208056576</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.de/search?q=bamboo+eclipse+plugin&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:unofficial&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 04:01:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 04:01:15.040</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241698201</id>
<property name="fileName"><![CDATA[BambooHomePage-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-07 20:20:28.009</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-07 20:20:28.009</property>
<property name="fileSize">40814</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241698205</id>
<property name="fileName"><![CDATA[BambooBuildInProgress1-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 00:40:58.182</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 00:40:58.182</property>
<property name="fileSize">40819</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209581241</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://jira.atlassian.com/browse/JRA-19294]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 06:55:15.272</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 06:55:15.272</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241698204</id>
<property name="fileName"><![CDATA[BambooBuildComplete1-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 00:40:56.872</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 00:40:56.872</property>
<property name="fileSize">45151</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241698209</id>
<property name="fileName"><![CDATA[JIRAIssueBuild-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 01:30:55.372</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 01:30:55.372</property>
<property name="fileSize">76479</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241698211</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 01:30:57.392</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 01:30:57.392</property>
<property name="fileSize">51239</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206817481</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.it/search?hl=es&safe=off&q=atlassian+dragon+installation+guide&aq=f&oq=atlassian+dragon+installation+guid]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 06:45:15.047</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 06:45:15.047</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">241698210</id>
<property name="fileName"><![CDATA[BambooJIRAIssues-v6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-08 01:30:56.755</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-08 01:30:56.755</property>
<property name="fileSize">48690</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204773377</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?q=atlassian+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 07:42:15.094</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 10:34:15.323</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851078</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916591</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:25:18.538</property>
<property name="versionComment"><![CDATA[Removed game]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211061310</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093957</id>
</element>
</collection>
<property name="version">56</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-30 16:08:22.094</property>
<property name="versionComment"><![CDATA[Column formatting]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211061312</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093959</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-07 23:57:34.113</property>
<property name="versionComment"><![CDATA[Added link to "After Dragons"]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709954</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676816</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-06 20:19:51.844</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851079</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916592</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 01:47:58.026</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912720</id>
<property name="position"/><property name="title"><![CDATA[_Dragons Create JIRA Project]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945166</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:00:44.967</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 18:53:21.158</property>
<property name="versionComment"><![CDATA[Tools option is at top right, not left]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391502</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211061308</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093955</id>
</element>
</collection>
<property name="version">55</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-30 16:07:14.365</property>
<property name="versionComment"><![CDATA[Added Twitter stream via widget macro]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211061307</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211093954</id>
</element>
</collection>
<property name="version">54</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-28 22:12:36.871</property>
<property name="versionComment"><![CDATA[Reverted from v. 51 because widget is not working]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851070</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916583</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:24:01.475</property>
<property name="versionComment"><![CDATA[Removed game]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709948</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676810</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 23:33:40.455</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209553895</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fr/search?source=ig&hl=fr&rlz=1G1GGLQ_FRFR290&=&q=atlassian+dragon+ques&btnG=Recherche+Google&meta=lr%3D&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 03:02:15.216</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 03:02:15.216</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209558295</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?sourceid=navclient&ie=UTF-8&rlz=1T4TSHC_enCA329CA332&q=we+be+dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 09:39:15.104</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 09:39:15.104</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709947</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676809</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:29:06.013</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851071</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916584</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:07:21.099</property>
<property name="versionComment"><![CDATA[Changed page name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851066</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916579</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:06:31.194</property>
<property name="versionComment"><![CDATA[Changed page name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709951</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676813</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 23:58:30.730</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209564861</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://twitturls.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 23:55:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 23:55:15.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206800826</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?rlz=1C1CHMA_en-GBAU328AU328&sourceid=chrome&ie=UTF-8&q=greenhopper+slay+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 23:13:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 23:13:15.028</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810444</id>
<property name="fileName"><![CDATA[JIRADashboardOnLogin.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 20:39:46.968</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:39:46.968</property>
<property name="fileSize">38514</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">200868805</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810445</id>
<property name="fileName"><![CDATA[JIRADashboard2Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391508</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 21:04:08.602</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-28 21:04:08.602</property>
<property name="fileSize">24385</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522147</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207465009</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&q=atlassian+dragon&meta=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 12:51:15.063</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 12:51:15.063</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208940943</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-GB%3Aofficial&hs=vzv&q=atlassian+dragonslayer&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 16:08:15.185</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 16:08:15.185</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810446</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardDefault.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-14 23:16:14.966</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-14 23:16:14.966</property>
<property name="fileSize">53894</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719871</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810447</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardStory.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:13:40.562</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:13:40.562</property>
<property name="fileSize">48960</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810448</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardUpdated.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-04-07 01:50:06.496</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-04-07 01:50:06.496</property>
<property name="fileSize">51052</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851085</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916598</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:06:31.181</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810449</id>
<property name="fileName"><![CDATA[JIRADashboard3Gadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-27 22:58:37.273</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-27 22:58:37.273</property>
<property name="fileSize">41710</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">201719912</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004363</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166036991</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-04 22:55:13.079</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851086</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916599</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 20:19:43.090</property>
<property name="versionComment"><![CDATA[Added /bin/ and run.bat (over start.bat) to install instructions.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810450</id>
<property name="fileName"><![CDATA[ConfluenceDemoSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-03-29 23:48:11.469</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-03-29 23:48:11.469</property>
<property name="fileSize">275909</property>
<property name="comment"/><property name="attachmentVersion">4</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014741</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810451</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 02:11:44.565</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:11:44.565</property>
<property name="fileSize">56891</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">4</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014746</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207992389</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://nicolinux.org/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 05:49:15.077</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 03:00:15.089</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">211651746</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">211716932</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-28 17:27:43.413</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810452</id>
<property name="fileName"><![CDATA[ConfluenceExternalGadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-12-02 16:57:51.675</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 16:57:51.675</property>
<property name="fileSize">57729</property>
<property name="comment"/><property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618767</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912712</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945158</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[vosipov]]></property>
<property name="lastModificationDate">2011-01-10 18:34:35.429</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851081</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916594</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 17:46:32.013</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810453</id>
<property name="fileName"><![CDATA[JIRADashboardStage4.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 18:59:52.363</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 18:59:52.363</property>
<property name="fileSize">75796</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027086</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810454</id>
<property name="fileName"><![CDATA[JIRATrustedApp.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-26 22:08:10.505</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-26 22:08:10.505</property>
<property name="fileSize">88485</property>
<property name="comment"/><property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618768</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210124525</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian%20crowd%20dragon&oe=utf-8&ie=UTF-8&sa=N&hl=fr&tab=iw]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 16:37:15.217</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 17:03:15.153</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061083</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/jgibbs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 13:20:15.026</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 13:20:15.026</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810455</id>
<property name="fileName"><![CDATA[FishEyeDashboard.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 20:35:57.529</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 20:35:57.529</property>
<property name="fileSize">48883</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014802</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709922</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676786</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:28:03.058</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411714</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">2608</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.697</property>
<property name="lastModificationDate">2008-08-28 02:03:20.697</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411713</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">1104</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.373</property>
<property name="lastModificationDate">2008-08-28 02:03:20.373</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411716</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">166756392</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.722</property>
<property name="lastModificationDate">2008-08-28 02:03:20.722</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411715</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">820</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.720</property>
<property name="lastModificationDate">2008-08-28 02:03:20.720</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209558321</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?sourceid=navclient&aq=0&oq=eclipse+atl&hl=en-GB&ie=UTF-8&rlz=1T4GGIH_en-GBGB246GB246&q=eclipse+atlassian]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 09:41:15.167</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 09:41:15.167</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709925</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676789</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 22:53:47.809</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709918</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676782</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:28:18.347</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411718</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">3644</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.746</property>
<property name="lastModificationDate">2008-08-28 02:03:20.746</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208479146</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=add+version+numbers+to+green+hopper&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 13:52:15.173</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 13:52:15.173</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411717</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">99188757</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.737</property>
<property name="lastModificationDate">2008-08-28 02:03:20.737</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411720</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">61</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.756</property>
<property name="lastModificationDate">2008-08-28 02:03:20.756</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411719</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">2708</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="user"><![CDATA[alui]]></property>
<property name="creationDate">2008-08-28 02:03:20.754</property>
<property name="lastModificationDate">2008-08-28 02:03:20.754</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851063</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916576</id>
</element>
</collection>
<property name="version">36</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:06:02.475</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851064</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916577</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 18:18:27.701</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685958</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 23:16:15.042</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 23:16:15.042</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851062</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916575</id>
</element>
</collection>
<property name="version">35</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 18:54:13.158</property>
<property name="versionComment"><![CDATA[Added "Test Connection" step to Subversion.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517842</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550412</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-06 00:28:07.976</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">213517841</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">213550411</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-30 16:15:05.962</property>
<property name="versionComment"><![CDATA[Added Twitter stream via widget macro]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207472561</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?threadID=29080&tstart=60]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 06:27:15.065</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 06:27:15.065</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205293537</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.pl/search?q=dragon+slayers+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 12:35:15.114</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 12:35:15.114</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">234652402</id>
<property name="position"/><property name="title"><![CDATA[Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">234685077</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:24:33.776</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-02-11 15:52:46.476</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207480151</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/reader/i/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 04:08:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 04:08:15.027</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207376347</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?sourceid=navclient&ie=UTF-8&rlz=1T4GGLR_enUS312US312&q=we+be+dragons]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 12:38:15.111</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 12:38:15.111</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618637</id>
<property name="fileName"><![CDATA[JIRADashboard3GadgetsV2.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-25 20:07:58.612</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 20:07:58.612</property>
<property name="fileSize">46574</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">234652398</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragon Slayers with JIRA Already Installed]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">234685073</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 00:42:59.231</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-02-15 23:16:06.007</property>
<property name="versionComment"><![CDATA[Added link to Atlassian support in preference to forums]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206800782</id>
<property name="viewCount">6</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-US%3Aofficial&hs=DKS&q=dragon+challenge+atlassian&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 23:04:15.076</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 23:21:15.120</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618635</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardUpdatedV2.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-25 19:54:35.325</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 19:54:35.325</property>
<property name="fileSize">59915</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709935</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676797</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:28:50.355</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618633</id>
<property name="fileName"><![CDATA[GreenHopperPlanningBoardDefaultV2.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-25 19:29:16.508</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-25 19:29:16.508</property>
<property name="fileSize">44154</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709936</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676798</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 23:33:14.084</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496400</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529076</id>
</element>
</collection>
<property name="version">4</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 01:57:10.450</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061021</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/jgibbs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 13:07:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 13:07:15.027</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496406</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529082</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:26:55.907</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710014</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 9 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676869</id>
</element>
</collection>
<property name="version">10</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:29:35.873</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496408</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529084</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:28:07.539</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">213450772</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">150405121</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165121103</id>
</property>
<property name="user"><![CDATA[imranaziz]]></property>
<property name="creationDate">2010-01-26 09:24:07.239</property>
<property name="lastModificationDate">2010-01-26 09:24:07.239</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710012</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676867</id>
</element>
</collection>
<property name="version">12</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 22:58:07.203</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496402</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529078</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:20:19.463</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207985507</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=setup+FishEye+URL&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 13:41:15.194</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 13:42:15.206</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208008899</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=integrating+atlassian+apps+together&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 11:19:15.225</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 11:19:15.225</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912767</id>
<property name="position">9</property>
<property name="title"><![CDATA[Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945212</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 20:12:43.037</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014802</id>
<property name="fileName"><![CDATA[FishEyeDashboard.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:27:38.119</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:27:38.119</property>
<property name="fileSize">47987</property>
<property name="comment"/><property name="attachmentVersion">5</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912765</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945210</id>
</element>
</collection>
<property name="version">80</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:04:03.340</property>
<property name="versionComment"><![CDATA[Changed JDK branding from Sun to Oracle]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206821638</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=integrating+bamboo+jira&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 12:46:15.153</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 12:46:15.153</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851158</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916669</id>
</element>
</collection>
<property name="version">44</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 01:37:52.616</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912763</id>
<property name="position">7</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and Crucible Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945208</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-11-30 18:45:50.191</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-26 23:04:32.564</property>
<property name="versionComment"><![CDATA[Fixed instructions for going to FishEye activity stream]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710031</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676886</id>
</element>
</collection>
<property name="version">13</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-10 02:09:50.300</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014792</id>
<property name="fileName"><![CDATA[FishEyeDatabaseSetup.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:27:39.274</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:27:39.274</property>
<property name="fileSize">66206</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851147</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916658</id>
</element>
</collection>
<property name="version">43</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 22:02:08.833</property>
<property name="versionComment"><![CDATA[Moved database driver up to bypass server restart]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014795</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-16 20:59:42.304</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:59:42.304</property>
<property name="fileSize">48287</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014746</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710030</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676885</id>
</element>
</collection>
<property name="version">24</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 01:37:12.724</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205685852</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=atlassian+install+dragon&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 22:51:15.123</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 22:51:15.123</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851106</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916618</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 20:20:19.097</property>
<property name="versionComment"><![CDATA[FISHEYE_HOME note to Linux install section.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912752</id>
<property name="position">4</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945198</id>
</element>
</collection>
<property name="version">100</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-13 23:08:30.344</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851105</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916617</id>
</element>
</collection>
<property name="version">38</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 21:00:22.772</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206828098</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://feeds.feedburner.com/AtlassianBlog]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 06:16:15.039</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 06:16:15.039</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851111</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 8 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916623</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:07:41.407</property>
<property name="versionComment"><![CDATA[Changed page name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207380274</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=%23atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 21:05:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 21:05:15.062</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061052</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/jgibbs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 13:14:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 13:14:15.027</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209465349</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en-GB&q=greenhopper+jira+install&sourceid=navclient-ff&rlz=1B3GGGL_en-GBGB356&ie=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 10:35:15.051</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 10:35:15.051</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014746</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:24:43.361</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:24:43.361</property>
<property name="fileSize">71219</property>
<property name="comment"/><property name="attachmentVersion">6</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014744</id>
<property name="fileName"><![CDATA[InsertImageIcon.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-16 20:45:07.232</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:45:07.232</property>
<property name="fileSize">378</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912760</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945206</id>
</element>
</collection>
<property name="version">73</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-04-28 23:15:26.665</property>
<property name="versionComment"><![CDATA[Added step 2.2 to go to FE admin screen]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014751</id>
<property name="fileName"><![CDATA[Dragon-Banner-2-700px.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-16 23:01:11.926</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 23:01:11.926</property>
<property name="fileSize">55426</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411786</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">2402</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004506</id>
</property>
<property name="user"><![CDATA[lima]]></property>
<property name="creationDate">2008-09-01 08:37:00.845</property>
<property name="lastModificationDate">2008-09-01 08:37:00.845</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851103</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916616</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:08:51.812</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411785</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">2402</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="user"><![CDATA[lima]]></property>
<property name="creationDate">2008-09-01 08:35:18.270</property>
<property name="lastModificationDate">2008-09-01 08:35:18.270</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709980</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676840</id>
</element>
</collection>
<property name="version">11</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 22:55:04.338</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206808513</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=atlassian+dragon+challenge]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 11:11:15.102</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 11:11:15.102</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912756</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye and Crucible]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945202</id>
</element>
</collection>
<property name="version">98</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-08 23:55:00.217</property>
<property name="versionComment"><![CDATA[Removed the word "actually" x2]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014748</id>
<property name="fileName"><![CDATA[PGAdminFishEyeDB.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:27:27.130</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:27:27.130</property>
<property name="fileSize">78159</property>
<property name="comment"/><property name="attachmentVersion">2</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851124</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916635</id>
</element>
</collection>
<property name="version">41</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 21:39:54.527</property>
<property name="versionComment"><![CDATA[Standardised database setup with pgAdmin III]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">169115832</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">169148578</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-29 17:44:52.171</property>
<property name="versionComment"><![CDATA[Published the page]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912736</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945182</id>
</element>
</collection>
<property name="version">65</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-05-22 23:01:11.357</property>
<property name="versionComment"><![CDATA[Changed JDK branding from Sun to Oracle]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851122</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916633</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 21:51:35.205</property>
<property name="versionComment"><![CDATA[Removed Streams Plugin references.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851127</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916638</id>
</element>
</collection>
<property name="version">42</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 22:00:10.225</property>
<property name="versionComment"><![CDATA[Standardised some wording in installation section]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207480207</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://real-url.org]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 04:44:15.049</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 13:52:15.026</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912732</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945178</id>
</element>
</collection>
<property name="version">77</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:23:41.192</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200709997</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200676853</id>
</element>
</collection>
<property name="version">23</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-09 01:22:48.924</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851115</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916627</id>
</element>
</collection>
<property name="version">40</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 21:04:12.517</property>
<property name="versionComment"><![CDATA[Stage 5 in tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">240912744</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">240945190</id>
</element>
</collection>
<property name="version">48</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-03-22 19:26:26.519</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851119</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916631</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 21:50:12.332</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851117</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916629</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-16 20:07:00.549</property>
<property name="versionComment"><![CDATA[Changed page name]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851118</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 6 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916630</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 21:49:40.898</property>
<property name="versionComment"><![CDATA[Added rough sequence.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206800965</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-au&q=atlassian+dragon+slayer&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 23:38:15.036</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 23:45:15.041</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207457122</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.facebook.com/posted.php?id=623711646&share_id=178155113044&fragment=share_footer178155113044&comments=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 01:38:15.130</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 01:38:15.130</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">204772660</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=jira+svn+integration+&src=IE-SearchBox&Form=IE8SRC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 06:53:15.085</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 06:53:15.085</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207468357</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1R2GGLL_enUS335&q=atlassian+here+be+dragons&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 19:59:15.117</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 19:59:15.117</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">169115791</id>
<property name="position"/><property name="title"><![CDATA[_Severity Levels for Security Issues]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">169148540</id>
</element>
</collection>
<property name="version">6</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-09-23 22:06:23.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-09-24 16:50:39.459</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461907</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209562547</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&safe=off&rlz=1C1CHNG_enUS329US329&q=Atlassian+Dragons&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 16:28:15.031</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 16:28:15.031</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004504</id>
<property name="position">0</property>
<property name="title"><![CDATA[Integration Points]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037129</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 23:28:07.539</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 21:03:30.438</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496404</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014992</id>
<property name="fileName"><![CDATA[FishEyeDashboard.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-18 01:25:14.124</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-18 01:25:14.124</property>
<property name="fileSize">61569</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014802</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209573603</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enUS354US354&aq=f&sourceid=chrome&ie=UTF-8&q=atlassian+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 14:00:15.101</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 14:00:15.101</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496169</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164528860</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:36:24.147</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208065005</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=how+to+create+an+external+database+for+bamboo&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 02:26:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 02:26:15.056</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207457154</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.de/search?hl=de&q=jira+eclipse+integration+bamboo&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 01:44:15.093</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 01:46:15.127</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014947</id>
<property name="fileName"><![CDATA[FishEyeSourceView.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:27:26.387</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:27:26.387</property>
<property name="fileSize">75034</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207989539</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=confluence+3.0.2+portlet+macro+jira+not+working&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004495</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 00:30:15.169</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 00:30:15.169</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004456</id>
<property name="position"/><property name="title"><![CDATA[User and Group Management across Directories and Web Applications]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037081</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 21:59:04.144</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 21:59:04.144</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004380</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004455</id>
<property name="position"/><property name="title"><![CDATA[Single Sign-On (SSO) across Web Applications]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037080</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 21:28:52.293</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 21:28:52.293</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">232718456</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">179634488</id>
</property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="user"><![CDATA[tradigewski]]></property>
<property name="creationDate">2011-02-14 14:24:37.920</property>
<property name="lastModificationDate">2011-02-14 14:24:37.920</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618767</id>
<property name="fileName"><![CDATA[ConfluenceExternalGadgets.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:24:53.847</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:24:53.847</property>
<property name="fileSize">58797</property>
<property name="comment"/><property name="attachmentVersion">5</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207376219</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=here+be+dragons+site%3Aatlassian.com&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 12:27:15.181</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 13:15:15.143</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205296794</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+slay+the+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 18:13:15.081</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 18:13:15.081</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209581931</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=en&q=greenhopper+Cannot+display+the+Task+Board+for+the+Unscheduled+version%21&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 07:52:15.383</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 07:52:15.383</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208004698</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rls=com.microsoft%3Aen-us%3AIE-SearchBox&rlz=1I7QVOD_en&q=dragon+slayer+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-25 05:35:15.168</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 05:35:15.168</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">166004465</id>
<property name="position"/><property name="title"><![CDATA[JIRA Issues Listed on a Confluence Page]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037090</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-13 22:50:36.882</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-13 22:50:36.882</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004417</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618774</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpaceV2.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-12-02 17:14:05.860</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-12-02 17:14:05.860</property>
<property name="fileSize">70149</property>
<property name="comment"/><property name="attachmentVersion">3</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618773</id>
<property name="fileName"><![CDATA[JIRATrustedApp.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-26 22:02:17.905</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-26 22:02:17.905</property>
<property name="fileSize">88504</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">207618768</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207364928</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=firefox-a&channel=s&rls=org.mozilla%3Aen-US%3Aofficial&hs=wOo&q=atlas+confluence+database&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 15:07:15.038</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 15:07:15.038</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207480275</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://bit.ly/9D4cS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 05:26:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 05:26:15.058</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618768</id>
<property name="fileName"><![CDATA[JIRATrustedApp.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:24:30.364</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:24:30.364</property>
<property name="fileSize">59920</property>
<property name="comment"/><property name="attachmentVersion">4</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851001</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916516</id>
</element>
</collection>
<property name="version">32</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 18:17:47.431</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">207618776</id>
<property name="fileName"><![CDATA[InsertMacroIcon.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-26 23:33:41.069</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-26 23:33:41.069</property>
<property name="fileSize">388</property>
<property name="comment"/><property name="attachmentVersion">1</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208470569</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla:en-GB:official&hs=7yd&ei=KU4TS6b2MIP6kAXQ2bWiBw&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=atlassian+dragonslayer&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 22:47:15.067</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 22:47:15.067</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061162</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/jgibbs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 13:39:15.015</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 13:39:15.015</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">232555876</id>
<property name="position">9</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">232588525</id>
</element>
</collection>
<property name="version">45</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:49:42.667</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206821491</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=bamboo+gadgets&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 12:31:15.111</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 12:31:15.111</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207457184</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.no/search?q=integration+documentation&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 01:49:15.128</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 01:49:15.128</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209564915</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.sg/search?hl=en&q=jira+save+configuration+file&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-08 00:05:15.122</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-08 00:05:15.122</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207980835</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 07:05:15.338</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 07:26:15.184</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851015</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916530</id>
</element>
</collection>
<property name="version">33</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 18:21:06.106</property>
<property name="versionComment"><![CDATA[Panels.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453728</id>
<property name="destinationPageTitle"><![CDATA[Here Be Dragons]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209578043</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&newwindow=1&q=How+to+create+a+sprint+in+Jira+Greenhopper&btnG=Search&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 01:42:15.169</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 01:42:15.169</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453730</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453729</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201851021</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916535</id>
</element>
</collection>
<property name="version">34</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 18:46:41.386</property>
<property name="versionComment"><![CDATA[Removed warning on database migration. Standardised FISHEYE_HOME references.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453736</id>
<property name="destinationPageTitle"><![CDATA[Confluence Setup Guide]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205293505</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&q=Bamboo%2C+dragon+slayer&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 12:33:15.096</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 12:33:15.096</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453735</id>
<property name="destinationPageTitle"><![CDATA[//localhost:8090/confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061139</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/jgibbs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 13:32:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 13:32:15.028</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453738</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453737</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208470546</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=jira+dragons&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 22:40:15.174</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 22:40:15.174</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453732</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 1 - Install JIRA]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453731</id>
<property name="destinationPageTitle"><![CDATA[//www.pgadmin.org/]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209558110</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?source=ig&hl=en&rlz=&=&q=enable+fisheye+api+jira&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 09:26:15.100</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 09:26:15.100</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453734</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453733</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453745</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[{http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453746</id>
<property name="destinationPageTitle"><![CDATA[Connecting to Crowd or JIRA for User Management]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453743</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810468</id>
<property name="fileName"><![CDATA[JIRADashboardStage8.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 22:27:03.135</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 22:27:03.135</property>
<property name="fileSize">90943</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027100</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453744</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810466</id>
<property name="fileName"><![CDATA[BambooPlanSummary.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 00:23:39.567</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 00:23:39.567</property>
<property name="fileSize">54350</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522316</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453741</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522333</id>
<property name="fileName"><![CDATA[dragon_badge04.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:44:42.000</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:44:42.000</property>
<property name="fileSize">8654</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522249</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810467</id>
<property name="fileName"><![CDATA[JIRAIssueBuild.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 00:58:29.257</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 00:58:29.257</property>
<property name="fileSize">58077</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375361</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453742</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8090/confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810464</id>
<property name="fileName"><![CDATA[BambooHomePage.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-23 22:15:25.814</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-23 22:15:25.814</property>
<property name="fileSize">29348</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375169</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453739</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8090/confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522335</id>
<property name="fileName"><![CDATA[dragon_badge00.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:58:14.765</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:58:14.765</property>
<property name="fileSize">6699</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810465</id>
<property name="fileName"><![CDATA[BambooJIRAIssues.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 00:55:52.288</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 00:55:52.288</property>
<property name="fileSize">38613</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375301</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453740</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8090/confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.582</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.582</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522334</id>
<property name="fileName"><![CDATA[dragon_badge03.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:44:42.017</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:44:42.017</property>
<property name="fileSize">8399</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522252</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810462</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 00:52:28.776</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 00:52:28.776</property>
<property name="fileSize">43824</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375298</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453753</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522337</id>
<property name="fileName"><![CDATA[dragon_badge02.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:44:42.012</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:44:42.012</property>
<property name="fileSize">7500</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522251</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810463</id>
<property name="fileName"><![CDATA[BambooBuildSuccessful-annotated.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 01:22:13.225</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 01:22:13.225</property>
<property name="fileSize">147318</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375303</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453754</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522336</id>
<property name="fileName"><![CDATA[dragon_badge01.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:44:42.007</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:44:42.007</property>
<property name="fileSize">6699</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522250</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810460</id>
<property name="fileName"><![CDATA[BambooBuildComplete.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 00:04:22.490</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 00:04:22.490</property>
<property name="fileSize">44304</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522313</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453751</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8090/confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522339</id>
<property name="fileName"><![CDATA[dragon_badge05.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:44:41.980</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:44:41.980</property>
<property name="fileSize">9568</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522248</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810461</id>
<property name="fileName"><![CDATA[BambooBuildInProgress.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-10-01 00:04:22.513</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 00:04:22.513</property>
<property name="fileSize">47704</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202375296</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453752</id>
<property name="destinationPageTitle"><![CDATA[Configuring Application Links]]></property>
<property name="destinationSpaceKey"><![CDATA[DOC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522338</id>
<property name="fileName"><![CDATA[dragon_badge08.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:45:01.733</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:45:01.733</property>
<property name="fileSize">10739</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522255</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">170001533</id>
<property name="position"/><property name="title"><![CDATA[Plugin Development]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">170034206</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-10-30 00:11:16.567</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-10-30 00:17:44.588</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453749</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522341</id>
<property name="fileName"><![CDATA[dragon_badge07.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:45:01.727</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:45:01.727</property>
<property name="fileSize">10685</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522254</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810458</id>
<property name="fileName"><![CDATA[JIRAIssueSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 22:08:24.355</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:08:24.355</property>
<property name="fileSize">55195</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015033</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453750</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8090/confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522340</id>
<property name="fileName"><![CDATA[dragon_badge06.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-29 22:45:01.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:45:01.706</property>
<property name="fileSize">10279</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">203522253</id>
</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810459</id>
<property name="fileName"><![CDATA[JIRAProjectSourceTab.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 22:07:22.620</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 22:07:22.620</property>
<property name="fileSize">39267</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202015034</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061183</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://communities.vmware.com/blogs/cttyler/2009/10/27/project-the-ultimate-alm-suite-in-a-box]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 13:46:15.036</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 13:46:15.036</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453747</id>
<property name="destinationPageTitle"><![CDATA[//www.foobar.com:8090/confluence]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810456</id>
<property name="fileName"><![CDATA[FishEyeSourceView.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 20:51:00.664</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 20:51:00.664</property>
<property name="fileSize">90401</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">2</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014947</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">170001530</id>
<property name="position"/><property name="title"><![CDATA[Plugin Development]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">170034203</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-10-30 00:11:16.567</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-10-30 00:11:16.567</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">203522342</id>
<property name="fileName"><![CDATA[ConfluenceDragonSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-30 00:31:35.529</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-30 00:31:35.529</property>
<property name="fileSize">56195</property>
<property name="comment"><![CDATA[]]></property>
<property name="attachmentVersion">3</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">202014746</id>
</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453748</id>
<property name="destinationPageTitle"><![CDATA[//coopers:8080]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061181</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/devtools/jgibbs/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 13:45:15.021</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 13:45:15.021</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">215810457</id>
<property name="fileName"><![CDATA[JIRADashboardStage6.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-30 22:06:28.485</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-30 22:06:28.485</property>
<property name="fileSize">85314</property>
<property name="comment"/><property name="attachmentVersion">1</property>
<property name="originalVersion" class="Attachment" package="com.atlassian.confluence.pages"><id name="id">209027097</id>
</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208944868</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=bamboo+plugin+jira]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 03:32:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 03:37:15.034</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453757</id>
<property name="destinationPageTitle"><![CDATA[//atlss.in/dragonquest].]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201850991</id>
<property name="position"/><property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916506</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 02:08:40.238</property>
<property name="versionComment"><![CDATA[Added t-shirt proviso.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453756</id>
<property name="destinationPageTitle"><![CDATA[Dragons Stage 4 - Install FishEye and Crucible]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">244453755</id>
<property name="destinationPageTitle"><![CDATA[//twitter.com/?status=Confluence is on fire! I've completed stage 3 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-06-22 00:39:50.583</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2011-06-22 00:39:50.583</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201850999</id>
<property name="position">6</property>
<property name="title"><![CDATA[Dragons Stage 7 - Get JIRA and FishEye Talking]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916514</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:31:12.876</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-15 23:23:11.025</property>
<property name="versionComment"><![CDATA[Removed game]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707143</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">201850998</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 6 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">201916513</id>
</element>
</collection>
<property name="version">31</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[edawson]]></property>
<property name="lastModificationDate">2009-09-16 02:20:29.097</property>
<property name="versionComment"><![CDATA[Added Crowd steps.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208470094</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon&rlz=1I7SKPB_en&ie=UTF-8&oe=UTF-8&sourceid=ie7]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-29 20:31:15.046</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-29 20:31:15.046</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207980881</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=cs&client=firefox-a&rls=org.mozilla%3Acs%3Aofficial&hs=Ant&q=atlassian+confluence+windows+gadget&btnG=Hledat&lr=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 07:09:15.145</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 07:09:15.145</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393751</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426418</id>
</element>
</collection>
<property name="version">62</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 21:08:13.533</property>
<property name="versionComment"><![CDATA[Minor wording tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206800564</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 22:15:15.026</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 23:27:15.055</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208061329</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=how+to+install+greenhopper+plugin&rls=com.microsoft:en-us&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 14:23:15.044</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 14:23:15.044</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710219</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677047</id>
</element>
</collection>
<property name="version">28</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 19:15:42.628</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206800558</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=here+be+dragons+atlassian&rls=com.microsoft:en-au&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 22:13:15.020</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-11 22:29:15.026</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208064619</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&safe=off&rlz=1T4DAAU_en-GBAU278AU278&q=how+to+install+bamboo+screening&meta=&aq=0sx&oq=how+to+install+bambo+scree]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-28 19:34:15.033</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 19:34:15.033</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205293323</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257319894&]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 12:16:15.194</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 12:16:15.194</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">211752977</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[GADGETS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">211649471</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-01-05 21:06:22.795</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-05 21:06:22.795</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">211752976</id>
<property name="destinationPageTitle"><![CDATA[All Atlassian Gadgets]]></property>
<property name="destinationSpaceKey"><![CDATA[GADGETS]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">211649471</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-01-05 21:06:22.795</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-01-05 21:06:22.795</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710210</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677039</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-10 18:24:05.881</property>
<property name="versionComment"><![CDATA[Implemented minor (this time ;-) review corrections.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393732</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426400</id>
</element>
</collection>
<property name="version">27</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 19:31:36.173</property>
<property name="versionComment"><![CDATA[T-shirt links]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393729</id>
<property name="position"/><property name="title"><![CDATA[_Dragons PostgreSQL]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426397</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:40:12.574</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:02:56.790</property>
<property name="versionComment"><![CDATA[Colour]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208940702</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&q=Greenhopper+log+hours+work+time+icon&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 15:44:15.318</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 15:44:15.318</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208064592</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://mail.google.com/a/avanticsoftware.com.au/?ui=2&view=bsp&ver=1qygpcgurkovy]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-28 19:10:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-28 19:10:15.040</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209577606</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=greenhopper+drag+items+on+planning+board&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 00:22:15.149</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 00:22:15.149</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">204047972</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">204080614</id>
</element>
</collection>
<property name="version">39</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-05 22:52:33.963</property>
<property name="versionComment"><![CDATA[Added URL to tweet]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710193</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677023</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-08 21:30:24.500</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206827762</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://wiki.altium.com/display/ADOH/Wiki+Site+-+Tips%2C+Tricks%2C+Common+Bugs+and+Workarounds]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 03:43:15.054</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 03:43:15.054</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207985340</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragonslayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 13:24:15.213</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 13:24:15.213</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393718</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426387</id>
</element>
</collection>
<property name="version">61</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:22:50.054</property>
<property name="versionComment"><![CDATA[Charlie's clothing]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208000770</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q=how+to+install+JDBC4+Postgresql+Driver%2C+Version+8.4-701&safe=active]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391047</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 20:10:15.076</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 20:10:15.076</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207380479</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?rlz=1C1CHNG_enAU354AU354&sourceid=chrome&ie=UTF-8&q=atlassian+dragonslayer]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-17 21:47:15.033</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-17 21:47:15.033</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393705</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426374</id>
</element>
</collection>
<property name="version">47</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:18:22.504</property>
<property name="versionComment"><![CDATA[Minor wording tweaks]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207460934</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=would+it+be+better+to+run+jira%2C+fisheye+and+bamboo+all+on+the+same+server&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 07:39:15.076</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 07:39:15.076</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206827771</id>
<property name="viewCount">21</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/news/2008/08/introducing_the_2.html]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 03:45:15.062</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 04:46:15.175</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393707</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426376</id>
</element>
</collection>
<property name="version">80</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 20:16:04.108</property>
<property name="versionComment"><![CDATA[FishEye version is 2.0.5]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206817999</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=ru&lr=&rlz=1G1GGLQ_ENRU322&ei=qmD9SueaEZP0mAO6rKGBDA&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CBQQBSgA&q=install+greenhopper+plugin&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-13 07:36:15.100</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-13 07:36:15.100</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207980920</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://plantecnologico.gpm.int/pt/wiki/atlassian]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 07:14:15.146</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 05:25:15.080</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210112604</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragons+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 17:07:15.140</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 17:07:15.140</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206808200</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=setup+fisheye&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 10:48:15.132</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 10:48:15.132</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209581772</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&rlz=1C1GGLS_enUS333US333&q=dragon+jira&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 07:40:15.337</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 07:40:15.337</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710178</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677009</id>
</element>
</collection>
<property name="version">26</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 18:07:29.286</property>
<property name="versionComment"><![CDATA[Reverted from v. 24 to restore deleted text]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">170034198</id>
<property name="body"><![CDATA[This page summarises the components of the Atlassian plugin development platform and provides links to more information. Unless otherwise stated, the information here refers to the latest version of the plugin framework. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description

{excerpt}
Atlassian is moving towards wider and more intimate integration between the different applications we develop. Providing a common [plugin framework|PLUGINFRAMEWORK:] is a key part of this initiative, because the plugin framework will help developers (both Atlassians and others) to write plugins that work on more than one of the products. It will also allow plugins on each product to have a consistent look and behaviour from a user's point of view, even when the plugin works on only one application.
{excerpt}

h2. Full Description
{include:PLUGINFRAMEWORK:_About|nopanel=true}

{include:PLUGINFRAMEWORK:_About Plugins|nopanel=true} 

h2. Components

{include:DEVNET:_Components of Plugin Development Platform|nopanel=true}


h2. Version Matrix
{include:PLUGINFRAMEWORK:_Version Compatibility|nopanel=true} 

h2. Documentation

{section}
{column:width=40%}
h6. Plugin Development Platform
Please refer to the [Developer Network|DEVNET:]:
{children:page=DEVNET:Atlassian Plugin Development Platform|depth=1}
{column}
{column:width=40%}
h6. Plugin Framework --- Latest Version
Please refer to the [Plugin Framework documentation|PLUGINFRAMEWORK:]:
{children:page=PLUGINFRAMEWORK:Plugin Framework Developer Documentation|depth=2}

h6. Plugin Framework --- All Versions
{include:ALLDOC:_All Versions of Plugin Framework Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393700</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426369</id>
</element>
</collection>
<property name="version">72</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:20:02.690</property>
<property name="versionComment"><![CDATA[Charlie's clothing]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207985334</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+slayer&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 13:24:15.090</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 12:50:15.084</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393692</id>
<property name="position">2</property>
<property name="title"><![CDATA[Dragons Stage 3 - Install GreenHopper into JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426361</id>
</element>
</collection>
<property name="version">37</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:23:52.524</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:18:46.209</property>
<property name="versionComment"><![CDATA[Charlie's clothing]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710169</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677001</id>
</element>
</collection>
<property name="version">25</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-10 02:57:23.836</property>
<property name="versionComment"><![CDATA[Minor review corrections.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210132541</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?rlz=1C1GGLS_enUS354US354&sourceid=chrome&ie=UTF-8&q=Atlassian+integration+dragon]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 10:37:15.296</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 10:37:15.296</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207472210</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=GREENHOPPER+LICENCE+INFORMATION&Form=DLRDF7&pc=MDDR&src=IE-SearchBox&adlt=strict]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 05:46:15.137</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 05:46:15.137</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208948397</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=here+be+dragons+jira&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-02 08:30:15.125</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-02 08:30:15.125</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210117014</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragons+lair]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 04:44:15.025</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 04:44:15.025</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210140118</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/newsletter/2009/11/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-13 09:41:15.058</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 09:41:15.058</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710275</id>
<property name="position"/><property name="title"><![CDATA[_Development Hubs]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677101</id>
</element>
</collection>
<property name="version">5</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-31 18:08:11.719</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-06-18 18:55:33.505</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118097</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208929847</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian+dragon+quest&rls=com.microsoft:en-us&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 18:48:15.093</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 18:48:15.093</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208929848</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=dragon+slayer+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-30 18:48:15.110</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-30 21:04:15.027</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">165118181</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">165085387</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:47:36.302</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ContentPermissionSet" package="com.atlassian.confluence.security">
<id name="id">228261899</id>
<property name="type"><![CDATA[Edit]]></property>
<collection name="contentPermissions" class="java.util.SortedSet"><element class="ContentPermission" package="com.atlassian.confluence.security"><id name="id">228229132</id>
</element>
</collection>
<property name="owningContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">227413907</id>
</property>
<property name="creationDate"/><property name="lastModificationDate"/></object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207985239</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?hl=fr&client=firefox-a&rls=org.mozilla%3Afr%3Aofficial&hs=s3J&q=sso+web+application&btnG=Rechercher&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 13:14:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 13:14:15.082</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207391034</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://us.mc521.mail.yahoo.com/mc/showMessage?.rand=2129804227&mid=1_56729_AGwwvs4AASD1SwRCMgkW%2BkbFGP8&fid=Inbox]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-18 15:44:15.242</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-18 15:44:15.242</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209472783</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com.eg/search?q=greenhopper+new+card+screen&ie=utf-8&oe=utf-8&aq=t&rls=com.ubuntu:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 09:39:15.041</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 09:39:15.041</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209457230</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.ca/search?q=jira+bamboo+integration&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-03 15:58:15.105</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-03 15:58:15.105</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206804390</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&safe=off&client=safari&rls=en&q=dragon+slayer+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-12 06:11:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-12 06:11:15.082</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209558528</id>
<property name="viewCount">4</property>
<property name="url"><![CDATA[http://www.bing.com/search?q=atlassian%2C+dragonslayer&form=OSDSRC]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 09:57:15.348</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 08:23:15.318</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208000830</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.com/search?q=dragon+slayer+atlassian&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 20:23:15.075</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-25 17:52:15.098</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207985277</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?q=atlassian-eclipse-plugin&rls=com.microsoft:en-us&ie=UTF-8&oe=UTF-8&startIndex=&startPage=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005062</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-23 13:17:15.209</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 13:17:15.209</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208047368</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.de/search?q=atlassian+dragon+guide&ie=utf-8&oe=utf-8&aq=t&rlz=1R1GGGL_de&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 03:22:15.196</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 03:22:15.196</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">209584774</id>
<property name="position"/><property name="title"><![CDATA[_Dragons PostgreSQL]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">209617512</id>
</element>
</collection>
<property name="version">3</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:40:12.574</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 21:18:14.113</property>
<property name="versionComment"><![CDATA[Moved the downloading of the PostgreSQL driver JAR into this step]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391071</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">224567904</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[PLUGINFRAMEWORK]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-09-26 22:49:24.349</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-09-26 22:49:24.349</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209461641</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.google.co.in/search?q=installing+bamboo+on+windows&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 04:45:15.140</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 04:45:15.140</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">224567906</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[PLUGINFRAMEWORK]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-09-26 22:49:24.349</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-09-26 22:49:24.349</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">224567905</id>
<property name="destinationPageTitle"><![CDATA[]]></property>
<property name="destinationSpaceKey"><![CDATA[DEVNET]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001525</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2010-09-26 22:49:24.349</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2010-09-26 22:49:24.349</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710248</id>
<property name="position">11</property>
<property name="title"><![CDATA[Dragons Stage 12 - Add Bamboo and Clover Gadgets]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677076</id>
</element>
</collection>
<property name="version">9</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:51:09.245</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 18:40:25.904</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207989598</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&q=single+sign+on+for+web+application&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 00:41:15.030</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 00:41:15.030</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710241</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677069</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-10 03:00:46.443</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207479976</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+-+slay+the+dragonslay&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 02:18:15.049</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 02:18:15.049</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393753</id>
<property name="position">8</property>
<property name="title"><![CDATA[Dragons Stage 7 - Install Bamboo]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426420</id>
</element>
</collection>
<property name="version">63</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:47:07.915</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 22:03:41.337</property>
<property name="versionComment"><![CDATA[Removed the Dragons 7 party]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707156</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710236</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677063</id>
</element>
</collection>
<property name="version">29</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 20:02:01.340</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208056917</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://blogs.atlassian.com/news/lkhalil/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-27 04:35:15.191</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-27 04:35:15.191</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710348</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677174</id>
</element>
</collection>
<property name="version">16</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-10 23:55:43.301</property>
<property name="versionComment"><![CDATA[Update.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209472635</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?client=safari&rls=en&q=jira+studio+bamboo&ie=UTF-8&oe=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438226</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 08:21:15.070</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 08:21:15.070</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207456853</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://us.mg3.mail.yahoo.com/dc/launch?.gx=0&.rand=bptjma7qs4jjv]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 00:53:15.124</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 00:53:15.124</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207480059</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/cse?cx=partner-pub-2070091971271392%3Ajpogut-tqkz&ie=UTF-8&q=atlassian+dragon&sa=Search]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 03:12:15.082</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 03:12:15.082</property>
</object>
<object class="Attachment" package="com.atlassian.confluence.pages">
<id name="id">202014741</id>
<property name="fileName"><![CDATA[ConfluenceDemoSpace.png]]></property>
<property name="contentType"><![CDATA[image/png]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:24:42.928</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:24:42.928</property>
<property name="fileSize">286238</property>
<property name="comment"/><property name="attachmentVersion">6</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210109492</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/url?sa=t&source=web&ct=res&cd=1&ved=0CAkQFjAA&url=http%3A%2F%2Fconfluence.atlassian.com%2Fdisplay%2FATLAS%2FHere%2BBe%2BDragons&rct=j&q=atlassian+dragon+quest&ei=uuQfS6uPA5OsNpXMnM0G&usg=AFQjCNEJOGiVMRl9Ff6x6pg8en_pFz8JwA]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-09 11:56:15.393</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-09 11:56:15.393</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">207489186</id>
<property name="position">8</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">207521841</id>
</element>
</collection>
<property name="version">14</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-11-22 22:26:15.212</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710333</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677159</id>
</element>
</collection>
<property name="version">15</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-10 21:26:42.064</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166108259</id>
<property name="destinationPageTitle"><![CDATA[Application Links (AppLinks)]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166004748</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 19:53:32.157</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:53:32.157</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208940836</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?hl=en&client=firefox-a&rls=org.mozilla%3Aen-GB%3Aofficial&hs=Isv&q=dragonslayer+atlassian&btnG=Search&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-01 15:57:15.242</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-01 15:57:15.242</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209472640</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://www.extragroup.de/weblog/hmk/archives/testing/2009/10/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-06 08:25:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-06 08:25:15.028</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166108256</id>
<property name="destinationPageTitle"><![CDATA[//www.atlassian.com]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166004748</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 19:53:32.157</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:53:32.157</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166108257</id>
<property name="destinationPageTitle"><![CDATA[Integration Points]]></property>
<property name="destinationSpaceKey"><![CDATA[ATLAS]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166004748</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 19:53:32.157</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:53:32.157</property>
</object>
<object class="OutgoingLink" package="com.atlassian.confluence.links">
<id name="id">166108258</id>
<property name="destinationPageTitle"><![CDATA[//forums.atlassian.com/forum.jspa?forumID=125]]></property>
<property name="destinationSpaceKey"><![CDATA[http]]></property>
<property name="sourceContent" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166004748</id>
</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 19:53:32.157</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 19:53:32.157</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209553506</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&client=safari&rls=en&q=dragon+slayers+atlassian&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-07 02:11:15.072</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-07 02:11:15.072</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">166428715</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[doc-export]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 20:17:59.131</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:17:59.131</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">205293159</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://sandbox.onconfluence.com/display/~sarahc/Sarah%27s+Space;jsessionid=496E680651193B62C1F9A5D5C10B8D74]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-10 12:00:15.127</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-10 12:00:15.127</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">166428708</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTPAGE]]></property>
<property name="group"/><property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 20:17:24.218</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:17:24.218</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496410</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529086</id>
</element>
</collection>
<property name="version">7</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:30:17.114</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">166428707</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[VIEWSPACE]]></property>
<property name="group"><![CDATA[confluence-users]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 20:17:05.627</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:17:05.627</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">209469346</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=single+sign+on+web+app&start=10&sa=N]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004376</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-04 22:36:15.047</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-04 22:36:15.047</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">166428712</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[VIEWSPACE]]></property>
<property name="group"/><property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 20:17:24.218</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:17:24.218</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">166428711</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTPAGE]]></property>
<property name="group"><![CDATA[confluence-users]]></property>
<property name="userName"/><property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 20:17:24.218</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:17:24.218</property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">166428714</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[EXPORTPAGE]]></property>
<property name="group"/><property name="userName"><![CDATA[doc-export]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 20:17:59.131</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:17:59.131</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">164496416</id>
<property name="position"/><property name="title"><![CDATA[Integration Documentation]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">164529092</id>
</element>
</collection>
<property name="version">8</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.073</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 23:35:24.297</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496124</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="SpacePermission" package="com.atlassian.confluence.security">
<id name="id">166428713</id>
<property name="space" class="Space" package="com.atlassian.confluence.spaces"><id name="id">164921345</id>
</property>
<property name="type"><![CDATA[VIEWSPACE]]></property>
<property name="group"/><property name="userName"><![CDATA[doc-export]]></property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-08-14 20:17:41.273</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-08-14 20:17:41.273</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207989796</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.uk/search?hl=en&num=100&q=atlassian+here+be+dragons&btnG=Search&meta=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 01:25:15.029</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 01:25:15.029</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208047289</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&source=hp&q=confluence.atlassian.com/display/ATLAS/Here+Be+Dragons&aq=f&oq=&aqi=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 03:14:15.637</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 03:14:15.637</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210128027</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?sourceid=chrome&ie=UTF-8&q=bamboo+gadget+jira]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 03:35:15.218</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 03:35:15.218</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210128000</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.be/search?sourceid=chrome&ie=UTF-8&q=jira+bamboo]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182425</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-11 03:32:15.252</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-11 03:32:15.252</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710411</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677234</id>
</element>
</collection>
<property name="version">22</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 02:43:53.967</property>
<property name="versionComment"><![CDATA[Added procedure for creating the DRA wiki space.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393687</id>
<property name="position"/><property name="title"><![CDATA[_Dragons JDK]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426355</id>
</element>
</collection>
<property name="version">2</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-28 01:38:13.592</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-29 22:00:47.603</property>
<property name="versionComment"><![CDATA[Colour]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391067</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207468547</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://helpspot.atlassian.com/admin.php?pg=request&reqid=163977]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-19 20:41:15.106</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-19 20:41:15.106</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206825556</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.co.in/search?hl=en&source=hp&q=how+to+install+greenhopper+in+jira&btnG=Google+Search&meta=&aq=0s&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707129</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-14 07:46:15.027</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-14 07:46:15.027</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206827660</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://tw.mg30.mail.yahoo.com/dc/launch?.gx=1&.rand=8sdmc28irf4i8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-15 02:30:15.019</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-15 02:30:15.019</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393683</id>
<property name="position">5</property>
<property name="title"><![CDATA[Dragons Stage 5 - Install FishEye]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426351</id>
</element>
</collection>
<property name="version">79</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:29:35.706</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 02:20:33.651</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707140</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">203393684</id>
<property name="position">0</property>
<property name="title"><![CDATA[Here Be Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">203426352</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-01 22:42:27.985</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-10-01 19:24:57.854</property>
<property name="versionComment"><![CDATA[T-shirt links]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710393</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677216</id>
</element>
</collection>
<property name="version">20</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 01:55:05.232</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710406</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677229</id>
</element>
</collection>
<property name="version">21</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 02:10:54.638</property>
<property name="versionComment"><![CDATA[Added Mac OS and Linux installation sections.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207996257</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.atlassian.com/search/?query=dragon+slayers]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">203390994</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-24 10:48:15.220</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-24 10:48:15.220</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210124741</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=en&q=atlassian+dragon&aq=f&oq=&aqi=g2]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 17:08:15.216</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 17:08:15.216</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710407</id>
<property name="position">1</property>
<property name="title"><![CDATA[Dragons Stage 2 - Install JIRA]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677230</id>
</element>
</collection>
<property name="version">30</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:07:48.517</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2009-09-10 21:12:28.730</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207480129</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com.au/search?q=atlassian+slay+the+dragon&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-GB:official&client=firefox-a]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 03:56:15.028</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 03:56:15.028</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">242254169</id>
<property name="position">10</property>
<property name="title"><![CDATA[After Dragons]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">242286879</id>
</element>
</collection>
<property name="version">46</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-11-19 18:56:29.561</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2011-02-15 21:05:42.619</property>
<property name="versionComment"><![CDATA[Dec 2010 Revision]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487342</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206536745</id>
<property name="viewCount">20</property>
<property name="url"><![CDATA[http://twitturls.com/]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 13:20:15.056</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-13 13:52:15.031</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710378</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677202</id>
</element>
</collection>
<property name="version">19</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 01:52:05.831</property>
<property name="versionComment"><![CDATA[Added anchor.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207472375</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.gr/search?hl=el&source=hp&q=install+jira+windows+public&meta=&aq=f&oq=]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-20 06:05:15.215</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-20 06:05:15.215</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">210124693</id>
<property name="viewCount">2</property>
<property name="url"><![CDATA[http://jira.atlassian.com/browse/JRA-19294?page=com.atlassian.jira.plugin.system.issuetabpanels%3Aall-tabpanel]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707126</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-12-10 17:01:15.023</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-12-10 17:31:15.167</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207480101</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.com/search?hl=nl&rls=com.microsoft:*:IE-SearchBox&rlz=1I7GZAZ_nl&ei=Z7UHS4TaI8OA-QbUxOnFDQ&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAYQBSgA&q=dragon+quest+system+requirements&spell=1]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-21 03:40:15.048</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-21 03:40:15.048</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">207360746</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257323179&tstart=0]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707163</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-16 09:10:15.160</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-16 09:10:15.160</property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">208051558</id>
<property name="viewCount">1</property>
<property name="url"><![CDATA[http://www.google.fi/search?hl=en&q=atlassian+dragon&sourceid=navclient-ff&rlz=1B3GGGL_enFI177FI216&ie=UTF-8]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-26 09:33:15.197</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-26 09:33:15.197</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710375</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677199</id>
</element>
</collection>
<property name="version">18</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 01:46:19.192</property>
<property name="versionComment"><![CDATA[Update - Confluence with Crowd integration section completed.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="ReferralLink" package="com.atlassian.confluence.links">
<id name="id">206800615</id>
<property name="viewCount">3</property>
<property name="url"><![CDATA[http://forums.atlassian.com/thread.jspa?messageID=257322343]]></property>
<property name="sourceContent" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707096</id>
</property>
<property name="creatorName"/><property name="creationDate">2009-11-11 22:29:15.040</property>
<property name="lastModifierName"/><property name="lastModificationDate">2009-11-23 12:12:15.078</property>
</object>
<object class="Page" package="com.atlassian.confluence.pages">
<id name="id">200710370</id>
<property name="position">3</property>
<property name="title"><![CDATA[Dragons Stage 4 - Install Confluence]]></property>
<collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">200677194</id>
</element>
</collection>
<property name="version">17</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2009-09-02 00:39:06.461</property>
<property name="lastModifierName"><![CDATA[ggaskell]]></property>
<property name="lastModificationDate">2009-09-11 00:52:41.457</property>
<property name="versionComment"><![CDATA[Further update.]]></property>
<property name="originalVersion" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707149</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424343</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391615</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560840</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] lets you work with your [Crucible|http://www.atlassian.com/software/crucible] code reviews within your IDEA development environment. 
{excerpt}

+_Screenshot: Crucible Reviews in an IDEA Tool Window_+
\\
\\
!crucible tab.jpg|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528202</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424347</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391619</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916935</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the {{\lib}} directory under your FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851451</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916927</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the {{\lib}} directory under your FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with name = '{{FISHEYE_INST}}' and value = your new directory e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Start FishEye from the command line by running {{\bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the {{/lib}} directory under your FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the classpath (by placing the {{.jar}} file in {{/lib}} directory under your FishEye installation directory in step 2 [above|#install]). Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click '*Save & Migrate Data*'. There will be a short delay as the near-empty FishEye database is converted.
{panel}

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851443</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560830</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your IDEA development environment. 
{excerpt}

+_Screenshot: Bamboo Builds in an IDEA Tool Window_+
\\
\\
!bamboo context menu.jpg|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528191</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424361</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391633</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424364</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.

(/) _Hint_: Commit a changeset to your repository and put '*DRA-2*' into the commit comment. You will see the changeset appear in the 'Source' tab on your 'DRA-2' issue.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391636</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424356</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391628</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424378</id>
<property name="body"><![CDATA[_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t! I've completed stage 1 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391650</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424377</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

\\
\\
(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391649</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560811</id>
<property name="body"><![CDATA[This page summarises the [JIRA Portlet macro|DOC:JIRA Portlet Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Portlet macro|DOC:JIRA Portlet Macro] to display a portlet from your [JIRA|http://www.atlassian.com/software/jira/] site on a [Confluence|http://www.atlassian.com/software/confluence/] page. The information is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

+_Screenshot: JIRA Portlet displayed on a Confluence page_+
\\
\\
!JIRAPortletMacro.png|border=1,bordercolor=gray!

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Portlet macro|DOC:JIRA Portlet Macro] allows you to display a [JIRA dashboard portlet|http://www.atlassian.com/software/jira/docs/latest/dashboard.html] on a [Confluence|http://www.atlassian.com/software/confluence/] page.

h2. Components

h6. Type of Integration

The JIRA Portlet macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Portlet macro|DOC:JIRA Portlet Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528170</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560805</id>
<property name="body"><![CDATA[This page summarises the [JIRA Issues macro|DOC:JIRA Issues Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Issues macro|DOC:JIRA Issues Macro] to display a list of [JIRA|http://www.atlassian.com/software/jira/] issues on a [Confluence|http://www.atlassian.com/software/confluence/] page. The list is shown in tabular format, and is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

+_Screenshot: JIRA issues displayed on a Confluence page_+
\\
\\
!JIRAIssuesMacro.png|border=1,bordercolor=gray!

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Issues macro|DOC:JIRA Issues Macro] allows you to display a list of issues from a JIRA site within a page in [Confluence|http://www.atlassian.com/software/confluence/].

In other words, if you have your own JIRA site, your Confluence page can show a dynamically-updated list of issues from your JIRA project. You can also show a list of issues from any JIRA site to which you and your readers have access.

h2. Components

h6. Type of Integration

The JIRA Issues macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Issues macro|DOC:JIRA Issues Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528163</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424374</id>
<property name="body"><![CDATA[Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391646</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424371</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}. https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/testBuild/successBuild/
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391643</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">199065676</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">199098384</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[jaeger@scra.org]]></property>
<property name="creationDate">2009-08-04 07:53:21.866</property>
<property name="lastModificationDate">2009-08-04 07:53:21.866</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560794</id>
<property name="body"><![CDATA[This page summarises the [JIRA Issues macro|DOC:JIRA Issues Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Issues macro|DOC:JIRA Issues Macro] to display a list of [JIRA|http://www.atlassian.com/software/jira/] issues on a [Confluence|http://www.atlassian.com/software/confluence/] page. The list is shown in tabular format, and is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

+_Screenshot: JIRA issues displayed on a Confluence page_+
\\
\\
!JIRAIssuesMacro.png|border=1,bordercolor=gray!

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Issues macro|DOC:JIRA Issues Macro] allows you to display a list of issues from a JIRA site within a page in [Confluence|http://www.atlassian.com/software/confluence/].

In other words, if you have your own JIRA site, your Confluence page can show a dynamically-updated list of issues from your JIRA project. You can also show a list of issues from any JIRA site to which you and your readers have access.

h2. Components

h6. Type of Integration

The JIRA Issues macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Issues macro|DOC:JIRA Issues Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528151</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424396</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed]. 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}


{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391668</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560775</id>
<property name="body"><![CDATA[{excerpt}
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover APIs|CLOVER:] --- please search for 'API' to find the relevant pages
* [Atlassian IDE Plugin for Eclipse|IDEPLUGIN:IDE Plugin for Eclipse] --- see links on home page
* [Atlassian IDE Plugin for IDEA|IDEPLUGIN:IDE Plugin for IDEA] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528130</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">165087966</id>
<property name="body"><![CDATA[When we say 'integration point', we mean a way in which the Atlassian products work together. It is a fairly broad term, basically meaning something you may want to do.

For example, you may want to display your JIRA issues on a Confluence page. That is an integration point. Or you may want to implement single sign-on across all your Atlassian products. That is another integration point.

Here are some of the ways the products work together. Click an item to see more details of the integration point and how you can make it happen.

{section}
{column:width=100px}
{children:depth=1|style=h6|excerpt=true}
{column}
{column:width=200px}
&nbsp;
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165120872</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424405</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed]. 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}


{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391677</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916993</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851509</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916995</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To configure FishEye for JIRA integration, you must add a JIRA server in the admin interface and then edit the default JIRA server mappings.

h4. Add a JIRA Server to FishEye

# To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.
# To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens. A number of fields and options must be filled out or selected on this page. See below for detailed information on each field.
# Fill in the *Name* field with a descriptive name for the JIRA server. This setting is required. 
# Fill in the *URL* field with the Internet address of the JIRA server. This setting is required. 
# For the *Allow Unassigned* setting, select True or False. (this setting allows or disallows unassigned sub-tasks). This setting is not required. 
# Fill in the *Username* field with the username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). This setting is required. 
# Fill in the *Password* field with the password for the account on the JIRA instance. This setting is required. 
# For the *Include in Activity Streams* setting, check the box to allow JIRA information to appear on the Dashboard. This setting is not required. 
# For the *Authenticate as Trusted Application* setting,check the box to allow the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues]. This setting is not required. 

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'. Leave the View JIRA Servers page open for the next step.

h4. Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851511</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424401</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

\\
\\
(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391673</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916983</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851499</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916985</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851501</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424426</id>
<property name="body"><![CDATA[_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}. https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/testBuild/successBuild/
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391698</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916977</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together the instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review. {color:red}*TBC*{color}
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis. {color:red}*TBC*{color}
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X, because the Mac is not a recommended platform for installation and integration of multiple server applications.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851493</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916973</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Type the following text into the next line on the Confluence page:
{code}
{jiraissues:anonymous=true|url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851489</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916962</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851478</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916966</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Type the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851482</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">204080614</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">204047972</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917070</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter a name and description for the repository. 
# Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851589</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240222556</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Studio integration with Bamboo and provides links to more information. Unless otherwise stated, the information here refers to the latest version of JIRA Studio integration with Bamboo. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{excerpt}
Elastic Bamboo is integrated with JIRA Studio.
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:JIRASTUDIO:_about Integrating JIRA Studio with hosted Bamboo|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

For instructions on how to set up Elastic Bamboo with JIRA Studio, see [Getting Started with Bamboo in JIRA Studio|JIRASTUDIO:Getting Started with Bamboo in JIRA Studio].

For instructions on how to set up Bamboo standalone with JIRA Studio, see [Running Bamboo Standalone with JIRA Studio|JIRASTUDIO:Running Bamboo Standalone with JIRA Studio].

]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240189805</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168067850</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Applications|http://www.atlassian.com]
* [Beyond JIRA|http://www.atlassian.com/beyond/]
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Integrating your Atlassian Applications

Using our open API and scores of plugins, your Atlassian applications will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian applications:
* The [integration points|Integration Points] show the many different ways the applications work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian applications in other ways.

h2. Integration Points

Here are a few of the ways our applications work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168002421</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917040</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851560</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424230</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}\start_crowd.bat}} (on Windows) or {{\{CROWD_INSTALL\}/start_crowd.sh}} (on UNIX).
# Go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'JiraOsUserAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391496</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424238</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391504</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917050</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0.S1}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the cross at the top of the edit window to close the window. You will see your planning board again. (There will still be only one card visible, because your new issue is for version 2.0 and by default the planning board shows unscheduled issues.)
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851569</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917025</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page:
#* Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
#* The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the bas URL for your Confluence site (e.g. {{http://coopers:8080}}or{{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
#* Click '*Send Request*'.
#* The 'Add New Trusted Application' screen will appear. Enter the following information:
#** Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#** IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
#* Leave the other fields at their default values.
#* Click '*Add*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851545</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424244</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391511</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424249</id>
<property name="body"><![CDATA[{warning:title=Work in progress}

!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

\\
\\
(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Now join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391516</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917033</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0.S1}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the cross at the top of the edit window to close the window. You will see your planning board again. (There will still be only one card visible, because your new issue is for version 2.0 and by default the planning board shows unscheduled issues.)
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851554</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917021</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851539</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917019</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Type the following text into the next line on the Confluence page:
{code}
{jiraissues:anonymous=true|url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851537</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917017</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851535</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917016</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851534</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917120</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye.  From the dashboard, click the Source tab to start browsing the contents of the repository. 
* Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851641</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207521841</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse, you can:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | [Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489186</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">169771077</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">169803786</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[pimmars@atosorigin.com]]></property>
<property name="creationDate">2008-10-22 16:03:49.406</property>
<property name="lastModificationDate">2008-10-22 16:03:49.406</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424299</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

\\
\\
(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Now join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391570</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215518488</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.3.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215486284</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560869</id>
<property name="body"><![CDATA[This page summarises the single sign-on (SSO) feature provided by [Atlassian Crowd|http://www.atlassian.com/software/crowd] and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Using [Crowd|http://www.atlassian.com/software/crowd] for single sign-on (SSO), each person needs only one username and password to access all web applications. You only need to log in once, to Crowd or a Crowd-connected application. When you start another Crowd-connected application, you will be logged in automatically. Similarly, when you log out, you will be logged out of Crowd and the other applications at the same time.
{excerpt}

!CrowdOverview.png!

h2. Full Description
{include:CROWD:_About Crowd|nopanel=true}

h2. Components

h6. Type of Integration

Crowd is an application security framework that handles authentication and authorisation for your web-based applications. You will need to download and install Crowd, and then configure it to hook up your applications and user directories.
* [More about Crowd|http://www.atlassian.com/software/crowd]
* [Download Crowd|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Crowd documentation|CROWD:]:
{children:page=CROWD:Crowd Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Crowd Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528235</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424317</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed]. 

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391588</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424315</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391586</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560871</id>
<property name="body"><![CDATA[This page summarises the user and group management features offered by [Atlassian Crowd|http://www.atlassian.com/software/crowd] and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use [Crowd|http://www.atlassian.com/software/crowd] to manage users and groups simply and centrally. You can use Crowd's internal user directories or hook up your existing LDAP user bases, then link them to your web applications. Crowd provides an Administration Console for administrators as well as a Self-Service Console, allowing users to view their login permissions and to change their own passwords and user profiles.
{excerpt}

!CrowdOverview.png!

h2. Full Description
{include:CROWD:_About Crowd|nopanel=true}

h2. Components

h6. Type of Integration

Crowd is an application security framework that handles authentication and authorisation for your web-based applications. You will need to download and install Crowd, and then configure it to hook up your applications and user directories.
* [More about Crowd|http://www.atlassian.com/software/crowd]
* [Download Crowd|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Crowd documentation|CROWD:]:
{children:page=CROWD:Crowd Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Crowd Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528237</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424316</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}. https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/testBuild/successBuild/
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391587</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917096</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# A list of FishEye settings for this repository will appear. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851616</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424313</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391584</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424314</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391585</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166560849</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] integrates [JIRA|http://www.atlassian.com/software/jira] issues into your IDEA development environment. 
{excerpt}

+_Screenshot: JIRA Issues in an IDEA Tool Window_+
\\
\\
!JIRAWithContextMenu.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166528212</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917075</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter a name and description for the repository. 
# Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick, allowing you to continue with this integration exercise. For example, let's assume you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to '{{project/trunk}}'. 
If your repository is structured differently, refer to the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851594</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424332</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed]. 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow Where Other Brave Dragon Slayers Have Trod}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}


{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391603</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424330</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed]. 

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391601</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">178421895</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">178454546</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[wross@inmedius.com]]></property>
<property name="creationDate">2008-12-19 14:24:27.419</property>
<property name="lastModificationDate">2008-12-19 14:24:27.419</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917083</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter a name and description for the repository. 
# Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick, allowing you to continue with this integration exercise. Note that you will want to include your entire repository later.
\\
\\
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}.
You would set the '*path*' variable to the following value: '{{project/trunk}}'. 
If your repository is structured differently, refer to the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851602</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916669</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851158</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424106</id>
<property name="body"><![CDATA[_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{color:red}*TBC -- got to this point. Now they must install Crowd.{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391359</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168068227</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Bamboo integration and provides links to more information. Unless otherwise stated, the information here refers to the latest version of JIRA, Bamboo and the JIRA Bamboo plugin. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Integrate [JIRA|http://www.atlassian.com/software/jira/] with [Bamboo|http://www.atlassian.com/software/bamboo/] to link JIRA issues to Bamboo builds. Once you have linked JIRA issues to your builds, you can view the linked issues in your Bamboo build results and build plans. You can also view build information in JIRA via tabs on related issues, versions and projects or on portlets.
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

+_Screenshot: Viewing the JIRA Issues for a Build Result_+
\\
\\
!BAMBOO:3.8 Viewing the JIRA Issues for a Build Result^Bamboo-BuildResults-Issues.png|border=1,bordercolor=gray!

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:BAMBOO:_about Integrating Bamboo with JIRA|nopanel=true}

h2. Components

h6. Type of Integration
{hide}
Give a short description --- is it a plugin, an application, a gadget, or what? For example:
Application Links is a plugin, which you will install and configure in the relevant products.
{hide}
JIRA Bamboo integration is enabled by two separate plugins, the *JIRA plugin for Bamboo* and the *JIRA Bamboo plugin* (i.e. Bamboo Plugin for JIRA). These plugins need to be installed and configured in both Bamboo and JIRA, as described in the [JIRA Bamboo integration documentation|BAMBOO:Integrating Bamboo with JIRA].


h6. List of Components
{hide}
Wherever possible, you should include the components from the inclusions library of the integration point's own doc space.
{hide}

You will need the following products to integrate JIRA and Bamboo:
* [JIRA|http://www.atlassian.com/software/jira]
* [Bamboo|http://www.atlassian.com/software/bamboo]
* The [JIRA Bamboo plugin|JIRAEXT:JIRA Bamboo Plugin] --- refer to the [JIRA Bamboo integration documentation|BAMBOO:Integrating Bamboo with JIRA] for details on how to set this up.

(i) _Please note, the JIRA Plugin for Bamboo is shipped with Bamboo._

h2. Version Matrix
{hide}
Wherever possible, you should include the version matrix from the inclusions library of the integration point's own doc space.
{hide}

The following matrix provides version compatibility information for the JIRA Bamboo plugin. As the JIRA plugin for Bamboo is bundled with Bamboo, the following matrix should provide you with all the information you need regarding component versions:

{include:JIRAEXT:JIRA Bamboo Plugin Version History|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

Please refer to the [JIRA Bamboo integration|BAMBOO:Integrating Bamboo with JIRA] documentation, as well as the [JIRAEXT:JIRA Bamboo Plugin] documentation.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168002842</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916658</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as {{FISHEYE_HOME}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your FISHEYE_HOME/lib directory. (Create the lib/ directory if it doesn't already exist.) 
# Launch FishEye from the command line, running {{FISHEYE_HOME\bin\run.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851147</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">241958925</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[hipoo]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2011-06-02 18:55:11.233</property>
<property name="lastModificationDate">2011-06-02 18:55:11.233</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168068220</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Bamboo integration and provides links to more information. Unless otherwise stated, the information here refers to the latest version of the JIRA, Bamboo and the JIRA Bamboo plugin. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Integration JIRA with Bamboo to link JIRA issues to Bamboo builds. Once you have linked JIRA issues to your builds, you can view the linked issues in your Bamboo build results and build plans. You can also view build information in JIRA, via tabs on related issues, versions and projects or on portlets.
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

+_Screenshot: Viewing the JIRA Issues for a Build Result_+
\\
\\
!BAMBOO:3.8 Viewing the JIRA Issues for a Build Result^Bamboo-BuildResults-Issues.png|border=1,bordercolor=gray!

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:BAMBOO:_about Integrating Bamboo with JIRA|nopanel=true}

h2. Components

h6. Type of Integration
{hide}
Give a short description --- is it a plugin, an application, a gadget, or what? For example:
Application Links is a plugin, which you will install and configure in the relevant products.
{hide}
JIRA Bamboo integration is enable by two separate plugins, the *JIRA plugin for Bamboo* and the *JIRA Bamboo plugin* (i.e. Bamboo Plugin for JIRA). These plugins need to be installed and configured in both Bamboo and JIRA, as described in the [JIRA Bamboo integration documentation|BAMBOO:Integrating Bamboo with JIRA].


h6. List of Components
{hide}
Wherever possible, you should include the components from the inclusions library of the integration point's own doc space.
{hide}

You will need the following products to integrate JIRA and Bamboo:
* [JIRA|http://www.atlassian.com/software/jira]
* [Bamboo|http://www.atlassian.com/software/bamboo]
* The [JIRA Bamboo plugin|JIRAEXT:JIRA Bamboo Plugin] — refer to the [JIRA Bamboo integration documentation|BAMBOO:Integrating Bamboo with JIRA] for details on how to  set this up.

(i) _Please note, the JIRA Plugin for Bamboo is shipped with Bamboo._

h2. Version Matrix
{hide}
Wherever possible, you should include the version matrix from the inclusions library of the integration point's own doc space.
{hide}

The following matrix provides version compatibility information for the JIRA Bamboo plugin. As the JIRA plugin for Bamboo is bundled with Bamboo, the following matrix should provide you with all the information you need regarding component versions:

{include:JIRAEXT:JIRA Bamboo Plugin Version History|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [JIRA Bamboo integration|BAMBOO:Integrating Bamboo with JIRA] documentation, as well as the [JIRAEXT:JIRA Bamboo Plugin] documentation
{column}
{column:width=40%}
h6. All Versions
There are no previous versions of documentation for this integration point.
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168002835</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424135</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some optional JIRA features, as required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Click '*Update*'.
# Enable sub-tasks:
#* Click '*Sub-Tasks*' in the left-hand panel (in the 'Global Settings' section).
#* The 'Sub-Tasks' screen will appear. Click '*Enable*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'JiraOsUserAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391390</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916635</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where the FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME\bin\run.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851124</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916638</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as {{FISHEYE_HOME}}.
# Launch FishEye from the command line, running {{FISHEYE_HOME\bin\run.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851127</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916631</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA for FishEye Integration

(!) Before you begin: Ensure that you configure your JIRA instance to [enable sub-tasks|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html], [enable unassigned issues|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] and [allow Remote API access|http://www.atlassian.com/software/jira/docs/v3.13.2/configure.html#options]. 

h2. Step 2. Configure FishEye for JIRA Integration

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard. (Requires a JIRA instance with the [streams plugins|http://confluence.atlassian.com/display/JIRAEXT/JIRA+FishEye+2.0+Streams+Integration] installed) | No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

_Screenshot: The Default JIRA Server Mappings Page_
!FISHEYE:FishEye Administrator's Guide^FishEye_2.0_Map_JIRA_Project_Default_Page.png|border=1,bordercolor=gray!

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851119</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424140</id>
<property name="body"><![CDATA[_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t! I've completed stage 1 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391396</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916633</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA for FishEye Integration

(!) Before you begin: Ensure that you configure your JIRA instance to [enable sub-tasks|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html], [enable unassigned issues|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] and [allow Remote API access|http://www.atlassian.com/software/jira/docs/v3.13.2/configure.html#options]. 

h2. Step 2. Configure FishEye for JIRA Integration

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard.| No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

_Screenshot: The Default JIRA Server Mappings Page_
!FISHEYE:FishEye Administrator's Guide^FishEye_2.0_Map_JIRA_Project_Default_Page.png|border=1,bordercolor=gray!

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851122</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916627</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME\bin\run.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851115</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916629</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851117</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916630</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA for FishEye Integration

(!) Before you begin: Ensure that you configure your JIRA instance to [enable sub-tasks|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html], [enable unassigned issues|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] and [allow Remote API access|http://www.atlassian.com/software/jira/docs/v3.13.2/configure.html#options]. 

h2. Step 2. Configure FishEye for JIRA Integration

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard. (Requires a JIRA instance with the [streams plugins|http://confluence.atlassian.com/display/JIRAEXT/JIRA+FishEye+2.0+Streams+Integration] installed) | No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

_Screenshot: The Default JIRA Server Mappings Page_
!FISHEYE:FishEye Administrator's Guide^FishEye_2.0_Map_JIRA_Project_Default_Page.png|border=1,bordercolor=gray!

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851118</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916623</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

xxxxxxxxxxxx

h2. Step 2. Install Bamboo

# Install Bamboo

{anchor:setup}
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 9 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851111</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424126</id>
<property name="body"><![CDATA[_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391380</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995259</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{excerpt}During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: {color:blue}*Charlie of Atlassian*{color}. Very soon you will want to add more users, and in particular users who are not administrators. We recommend that you use Crowd for all user and group management. Below is a suggested plan of action and a hint about what to do if new users experience a delay before they can see their JIRA projects.{excerpt}

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962559</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995254</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{warning:title=WORK IN PROGRESS}TO DO: Must test this procedure.{warning}

{excerpt}During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators. We recommend that you use Crowd for all user and group management. Below is a suggested plan of action and a hint about experiencing delays before new users can see their JIRA projects.{excerpt}

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962554</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424115</id>
<property name="body"><![CDATA[_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391368</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995175</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on:
#* [Performing a review|CRUCIBLE:Performing the Review] that has been assigned to you.
#* [Adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
#* [Managing the review workflow|CRUCIBLE:Summarising and Closing the Review].
#* [Integrating your reviews with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
{panel}
_+Screenshot 1 (click to enlarge): A Crucible review+_
\\
\\
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962475</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995171</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

If you experience problems with running Bamboo as a Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.

h5. RELATED TOPICS

[Dragons Stage 7 - Install Bamboo]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962471</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916722</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together the instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review. {color:red}*TBC*{color}
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis. {color:red}*TBC*{color}
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X, because the Mac is not a recommended platform for installation and integration of multiple server applications.
* *Source repository:* You must have your own source repository. The instructions assume that you are using SVN.{color:red}*TBC*{color}
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851213</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424163</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some optional JIRA features, as required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'JiraOsUserAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391421</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">168198196</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">168230918</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[aheritier]]></property>
<property name="creationDate">2008-09-09 15:27:01.271</property>
<property name="lastModificationDate">2008-09-09 15:27:01.271</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995170</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{color:red}TO DO: Must test this procedure.{color}

During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators.

We recommend that you use Crowd for all user and group management. Here is a suggested plan of action:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962470</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916746</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the \lib directory under your FishEye installation directory. (Create the \lib directory if it doesn't already exist.) 
# Create another directory where you will store FishEye's local data, separate from the application. This allows for easier FishEye upgrades in future. Create the new directory and then create an environment variable called 'FISHEYE_INST' and point it to that location. Once you have have declared your FISHEYE_INST, you will need to copy your config.xml file from your FishEye installation folder to your FISHEYE_INST base directory.
# Launch FishEye from the command line, running {{\bin\run.bat}} from your FishEye installation directory. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. Do not close the console window, leave it running in the background.
(i) You will also receive a warning in the console output about a 'missing license'. This is normal. 
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the /lib directory under your FishEye installation directory. (Create the lib/ directory if it doesn't already exist.) 
# Create another directory where you will store FishEye's local data, separate from the application. This allows for easier FishEye upgrades in future. Create the new directory and then create an environment variable called 'FISHEYE_INST' and point it to that location. Once you have have declared your FISHEYE_INST, you will need to copy your config.xml file from your FishEye installation folder to your FISHEYE_INST base directory.
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. Do not close the console window, leave it running.
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in /lib directory under your FishEye installation directory). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851237</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528860</id>
<property name="body"><![CDATA[{include:_Watch this space|nopanel=true}

{section}
{column:width=40%}
{panel:title=xxxxxxx|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
xxxxxxx
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Atlassian's *legendary support* is currently available via three support centres around the world.
* Support issues should be filed [here|http://support.atlassian.com]
* Feature requests should be filed [here|xxxxxxxxxx]

* [Training|http://www.atlassian.com/support/training.jsp]
* [Forums|http://forums.atlassian.com/]
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
xxxxxxxxxxxx

Resources for hosted products:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}
{column:width=50%}

h2. About Atlassian Product Integration

xxxxxxxxxxxxx

h2. What's Here

xxxxxxxxxxxxx

h2. News
xxxxxxxxxxxxxxxxx
{column}
{column:width=25%}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496169</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424153</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some optional JIRA features, as required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Click '*Update*'.
# Enable sub-tasks:
#* Click '*Sub-Tasks*' in the left-hand panel (in the 'Global Settings' section).
#* The 'Sub-Tasks' screen will appear. Click '*Enable*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'JiraOsUserAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391410</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424152</id>
<property name="body"><![CDATA[# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Click '*Update*'.
# Enable sub-tasks:
#* Click '*Sub-Tasks*' in the left-hand panel (in the 'Global Settings' section).
#* The 'Sub-Tasks' screen will appear. Click '*Enable*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391409</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916737</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851228</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995157</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
{panel}
_+Screenshot 1 (click to enlarge): A Crucible review+_
\\
\\
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# The '*Clover License*' is optional:
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# xxxxxxxxxxxxxxx
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962457</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916695</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

xxxxxxxxxxxx

h2. Step 2. Install Bamboo

# Install Bamboo

{anchor:setup}
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 8 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 9 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851186</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916699</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the /lib directory under your FishEye installation directory. (Create the lib/ directory if it doesn't already exist.) 
# Create another directory where you will store FishEye's local data, separate from the application. This allows for easier FishEye upgrades in future. Create the new directory and then create an environment variable called 'FISHEYE_INST' and point it to that location. Once you have have declared your FISHEYE_INST, you will need to copy your /config.xml file from your FishEye installation folder to your FISHEYE_INST/ base directory.
# Launch FishEye from the command line, running {{\bin\run.bat}} from your FishEye installation directory. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. Do not close the console window, leave it running in the background.
(i) You will also receive a warning in the console output about a 'missing license'. This is normal. 
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location a the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the /lib directory under your FishEye installation directory. (Create the lib/ directory if it doesn't already exist.) 
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. Do not close the console window, leave it running.
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in /lib directory under your FishEye installation directory). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851190</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916700</id>
<property name="body"><![CDATA[You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Bamboo 2.3.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}Bamboo\webapp\WEB-INF\classes\bamboo-init.properties}}. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.{color}
#* Add a line specifying the {{bamboo.home}} property, with an absolute path to your Bamboo home directory. For example:
{{bamboo.home=c:/bamboo/data}} {color:red}*Confirm that you have to add the line, and update Bamboo docs if necessary too.{color}
(Note the forward slashes.)
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.*{color}
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}\BambooConsole.bat}}.
{panel}
{expand}

{color:red}*UNIX instructions not done yet*.{color}
{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 8 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 9 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851191</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550160</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.2*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4.2-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox, to enable Gzip compression.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517558</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550162</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 7 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 7 gadgets_+
\\
\\
!JIRADashboardStage8.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517560</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916694</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as {{FISHEYE_HOME}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your FISHEYE_HOME/lib directory. (Create the lib/ directory if it doesn't already exist.) 
# Launch FishEye from the command line, running {{FISHEYE_HOME\bin\run.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as FISHEYE_HOME.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your FISHEYE_HOME/lib directory. (Create the lib/ directory if it doesn't already exist.) 
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851185</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995193</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{warning:title=TO DO: Must test this procedure.}

{excerpt}During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators. We recommend that you use Crowd for all user and group management. Below is a suggested plan of action and a hint about experiencing delays before new users can see their JIRA projects.{excerpt}

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962493</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424186</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'JiraOsUserAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391446</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208995192</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{color:red}TO DO: Must test this procedure.{color}

{excerpt}During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators. We recommend that you use Crowd for all user and group management. Below is a suggested plan of action and a hint about experiencing delays before new users can see their JIRA projects.{excerpt}

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962492</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166036576</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [forums|http://forums.atlassian.com/] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
Click a news item below to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

{blog-posts:5|content=titles}

h2. Integration Points

Here are a few of the ways our products work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166003912</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550144</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517542</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550149</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517548</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550154</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.1.2*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.1.2*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.1.2*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboardV2.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517552</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550153</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517551</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550151</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.2 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.2 for JIRA 4.0*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefaultV2.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to add a JIRA issue, edit and move JIRA issues through the workflow stages via the GreenHopper Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. 

First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, then add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon (a pencil) next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardUpdatedV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select Select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legen*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3GadgetsV2.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517549</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550158</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Now you will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. Click '*Edit default JIRA Server mappings*'.
# The 'Default Mappings for JIRA Projects' screen will appear. Click '*add all*'.
# Next you will reassure FishEye that it can trust your JIRA server. Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517556</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916756</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard.| No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851248</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916758</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard.| No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851251</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916752</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA for FishEye Integration

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
   3. Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
   4. The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
   5. The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye for JIRA Integration

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard.| No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

_Screenshot: The Default JIRA Server Mappings Page_
!FISHEYE:FishEye Administrator's Guide^FishEye_2.0_Map_JIRA_Project_Default_Page.png|border=1,bordercolor=gray!

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851244</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916751</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA for FishEye Integration

(!) Before you begin: Ensure that you configure your JIRA instance to [enable sub-tasks|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html], [enable unassigned issues|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] and [allow Remote API access|http://www.atlassian.com/software/jira/docs/v3.13.2/configure.html#options]. 

h2. Step 2. Configure FishEye for JIRA Integration

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard.| No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

_Screenshot: The Default JIRA Server Mappings Page_
!FISHEYE:FishEye Administrator's Guide^FishEye_2.0_Map_JIRA_Project_Default_Page.png|border=1,bordercolor=gray!

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851243</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529092</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [forums|http://forums.atlassian.com/] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
{blog-posts:5|content=titles}

Click a news item to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

h2. Integration Points

Here are a few:
{children:page=Integration Points|depth=1|first=10|style=h6}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496416</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916754</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard.| No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

_Screenshot: The Default JIRA Server Mappings Page_
!FISHEYE:FishEye Administrator's Guide^FishEye_2.0_Map_JIRA_Project_Default_Page.png|border=1,bordercolor=gray!

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851246</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916753</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
   3. Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
   4. The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
   5. The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.

To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens.

A number of fields and options must be filled out or selected on this page. See the table below for information on each field.

|| Option || Type || Description || Required ||
| *Name* | Text Field | A descriptive name for the JIRA server. | Yes |
| *URL* | Text Field | The Internet address of the JIRA server. | Yes |
| *Subtask Type ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution Action ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Subtask Resolution ID* | Number | This is required to enable creating issues from a Crucible comment (not required for standalone FishEye). See the [Crucible configuration page|CRUCIBLE:JIRA Integration in Crucible]. | No |
| *Allow Unassigned* | True/False Button | Allow unassigned sub-tasks. | No |
| *Username* | Text Field | The username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). | Yes |
| *Password* | Text Field | The password for the account on the JIRA instance. | Yes |
| *Include in Activity Streams* | Check Box | Allows JIRA information to appear on the Dashboard.| No |
| *Authenticate as Trusted Application* | Check Box | Allows the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues].| No |

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

_Screenshot: The Default JIRA Server Mappings Page_
!FISHEYE:FishEye Administrator's Guide^FishEye_2.0_Map_JIRA_Project_Default_Page.png|border=1,bordercolor=gray!

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851245</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916765</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To configure FishEye for JIRA integration, you must add a JIRA server in the admin interface and then edit the default JIRA server mappings.

h4. Add a JIRA Server to FishEye

# To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.
# To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens. A number of fields and options must be filled out or selected on this page. See below for detailed information on each field.
# Fill in the *Name* field with a descriptive name for the JIRA server. This setting is required. 
# Fill in the *URL* field with the Internet address of the JIRA server. This setting is required. 
# For the *Allow Unassigned* setting, select True or False. (this setting allows or disallows unassigned sub-tasks). This setting is not required. 
# Fill in the *Username* field with the username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). This setting is required. 
# Fill in the *Password* field with the password for the account on the JIRA instance. This setting is required. 
# For the *Include in Activity Streams* setting, check the box to allow JIRA information to appear on the Dashboard. This setting is not required. 
# For the *Authenticate as Trusted Application* setting,check the box to allow the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues]. This setting is not required. 

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

h4. Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851258</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916759</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the {{\lib}} directory under your FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with name = '{{FISHEYE_INST}}' and value = your new directory e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Start FishEye from the command line by running {{\bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the {{/lib}} directory under your FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

h2. Step 3. Set Up FishEye and Connect it to the PostgreSQL database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the hostname or IP address instead of {{localhost}}). 
# You will be prompted to enter your FishEye license key and set the FishEye admin password. 
# Navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in /lib directory under your FishEye installation directory). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you should restrict FishEye to only look at a particular part of the repository, for example a particular project. This ensures that the initial scan that FishEye does will be quick, allowing you to continue with this process. For example, when you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would set the '*path*' variable to 'project'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. The message '*Connection Success*' will appear at the top of the screen if successful.
# Set FishEye to include a specific element of the repository. Click the '*Add Include*' heading under '*Allow (process)*' on the repository details screen. When you have a structure like the following in your repository: 
{noformat}project/trunk{noformat}
You would enter '*trunk*' as the value to include, then click '*Add*'. If your repository is structured differently, see the [full documentation|FISHEYE:Subversion].
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851252</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916761</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

# To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.
# To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens. A number of fields and options must be filled out or selected on this page. See below for detailed information on each field.
# Fill in the *Name* field with a descriptive name for the JIRA server. This setting is required. 
# Fill in the *URL* field with the Internet address of the JIRA server. This setting is required. 
# For the *Allow Unassigned* setting, select True or False. (this setting allows or disallows unassigned sub-tasks). This setting is not required. 
# Fill in the *Username* field with the username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). This setting is required. 
# Fill in the *Password* field with the password for the account on the JIRA instance. This setting is required. 
# For the *Include in Activity Streams* setting, check the box to allow JIRA information to appear on the Dashboard. This setting is not required. 
# For the *Authenticate as Trusted Application* setting,check the box to allow the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues]. This setting is not required. 

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'.

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851254</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529076</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Atlassian's *legendary support* is currently available via three support centres around the world.
* Support issues should be filed [here|http://support.atlassian.com]
* Feature requests should be filed [here|xxxxxxxxxx]

* [Training|http://www.atlassian.com/support/training.jsp]
* [Forums|http://forums.atlassian.com/]
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
xxxxxxxxxxxx

Resources for hosted products:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}
{column:width=50%}

h2. About this Documentation

This documentation is your first port of call for information on how you can make your Atlassian products work together. You'll find technical information as well as an overview of the added functionality such integration provides.
* The [integration points|Integration Points] show the many different ways the products work together and how you can on make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.


h2. News
xxxxxxxxxxxxxxxxx
{column}
{column:width=25%}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496400</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529078</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [forums|http://forums.atlassian.com/] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

Don't want to install everything yourself? Try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can on make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
{blog-posts:5|content=titles}

h2. Integration Points

Here are a few:
{children:page=Integration Points|depth=1|first=10|style=h6}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496402</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529079</id>
<property name="body"><![CDATA[This is a new set of documentation. We hope that it will become your first port of call for information on making your [Atlassian products|http://www.atlassian.com] work together.

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.
* The [integration points|Integration Points] show the many different ways the products work together and how you can on make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h6. Watch this space!]]></property>
<property name="content" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">164496403</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529082</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [forums|http://forums.atlassian.com/] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

Don't want to install everything yourself? Try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
{blog-posts:5|content=titles}

h2. Integration Points

Here are a few:
{children:page=Integration Points|depth=1|first=10|style=h6}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496406</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529084</id>
<property name="body"><![CDATA[When we say 'integration point', we mean a way in which the Atlassian products work together. It's a fairly broad term, basically meaning something you may want to do.

For example, you may want to display your JIRA issues on a Confluence page. That's an integration point. Or you may want to implement single sign-on across all your Atlassian products. That's another integration point.

Here are some of the ways the products work together. Click an item to see more details of the integration point and how you can make it happen:
{children:depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496408</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164529086</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [forums|http://forums.atlassian.com/] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

Don't want to install everything yourself? Try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
{blog-posts:5|content=titles}

Click a news item to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

h2. Integration Points

Here are a few:
{children:page=Integration Points|depth=1|first=10|style=h6}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496410</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211716932</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:Gadget Development Hub]
* [REST APIs|DEVNET:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|CONFDEV:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:Crowd Development Hub]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211651746</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">179470865</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Studio integration with Bamboo and provides links to more information. Unless otherwise stated, the information here refers to the latest version of JIRA Studio integration with Bamboo. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Integrate your hosted Bamboo instance with your [JIRA Studio|http://www.atlassian.com/hosted/studio/] Subversion repository to enable all of the [continuous integration benefits|http://www.atlassian.com/software/bamboo/features/] of [Bamboo|http://www.atlassian.com/software/bamboo/] for your development suite. 
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:JIRASTUDIO:_about Integrating JIRA Studio with hosted Bamboo|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}
Please contact [Contegix|http://www.contegix.com/] to purchase hosting for your Bamboo instance.

To use your hosted Bamboo instance with your JIRA Studio Subversion repository, please refer to the following documentation:
* [Bamboo --- Setting up Subversion as the repository for build plan|BAMBOO:Subversion]
* [JIRA Studio --- Subversion repository details|JIRASTUDIO:How do I access my Subversion repository?]


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">179438232</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">229900342</id>
<property name="body"><![CDATA[{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level, rating the vulnerability as one of the following:
* Critical
* High
* Moderate
* Low

Below is a summary of the factors which we use to decide on the severity level, and the implications for your installation.

h5. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

h5. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

h5. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

h5. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

{info:title=Original ranking compiled by the SANS Institute}Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">229834821</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168068118</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Applications|http://www.atlassian.com]
* [Beyond JIRA|http://www.atlassian.com/beyond/]
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=126] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Integrating your Atlassian Applications

Using our open API and scores of plugins, your Atlassian applications will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian applications:
* The [integration points|Integration Points] show the many different ways the applications work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian applications in other ways.

h2. Integration Points

Here are a few of the ways our applications work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168002724</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522400</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489785</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522428</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

(i) If you wish to use Maven 2 and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading this JAR separately.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489813</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522427</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will create a wiki space and add a dynamic list of JIRA issues to a wiki page. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1* or *3.0.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.2*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489812</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423826</id>
<property name="body"><![CDATA[{warning:title=Work in progress}

!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons Stage 2 - Install JIRA]

Now join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391060</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423849</id>
<property name="body"><![CDATA[!Dragon-Banner-1.png|align=center!
_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{color:red}*TBC -- got to this point. Now they must install Crowd.{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391086</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423842</id>
<property name="body"><![CDATA[{color:red}
* *Stage 1*
** JDK.
** If you do not have a database server already installed, please install and set up your PostgreSQL database server as specified in [Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. If your JIRA is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL.
** Install and set up Crowd by following steps 3 to 5 in [Dragons Stage 1 - Install Java, PostgreSQL and Crowd].
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391079</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098662</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite: [Crucible|http://www.atlassian.com/software/crucible/] for code review and [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to open the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye and Crucible#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username '{color:blue}*charlie*{color}', meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '{color:blue}*CR-1*{color}'. Please refer to the Crucible documentation on:
#* [Performing a review|CRUCIBLE:Performing the Review] that has been assigned to you.
#* [Adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
#* [Managing the review workflow|CRUCIBLE:Summarising and Closing the Review].
#* [Integrating your reviews with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
{panel}
_+Screenshot 1 (click to enlarge): A Crucible review+_
\\
\\
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '{color:blue}*Main*{color}', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065973</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098659</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_09.png! (Needs a new image -- https://extranet.atlassian.com/jira/browse/UI-1236)
_You're nearly there. Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardStage9.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065970</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098658</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 7 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 7 gadgets_+
\\
\\
!JIRADashboardStage8.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065969</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098668</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_09.png! 
_You're nearly there. Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardStage9.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065979</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098666</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065977</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098665</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065976</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098664</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite: [Crucible|http://www.atlassian.com/software/crucible/] for code review and [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to open the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye and Crucible#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username '{color:blue}*charlie*{color}', meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '{color:blue}*CR-1*{color}'. Please refer to the Crucible documentation on:
#* [Performing a review|CRUCIBLE:Performing the Review] that has been assigned to you.
#* [Adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
#* [Managing the review workflow|CRUCIBLE:Summarising and Closing the Review].
#* [Integrating your reviews with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
{panel}
_+Screenshot 1 (click to enlarge): A Crucible review+_
\\
\\
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '{color:blue}*Main*{color}', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065975</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098663</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows by running {{\{BAMBOO_INSTALL\InstallAsService.bat}} If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}} You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment] (note, you do not need to configure an IDE). The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar and log in with username charlie and the password you specified when prompted.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add builder as a server capabilities*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that the Java Home is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*':
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.4.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.7.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+8+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065974</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098645</id>
<property name="body"><![CDATA[{excerpt}If you experience problems with running Bamboo as a Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.{excerpt}

h5. RELATED TOPICS

[Dragons Stage 7 - Install Bamboo]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065956</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098646</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The '*Link to another server -- Step 1*' dialogue will appear. Enter the following information:
#* Server URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
# Click '*Next*'.
# The '*Link to another server -- Step 2*' dialogue will appear. Enter the following information:
#* Application Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* Application Name: {color:blue}*{{JIRA}}*{color}.
# Click '*Create*'. The 'Configure Application Links' page will display the new application link to your JIRA server.
# Now you will configure authentication for the application link. Click '*Configure*' next to your new application link.
# The '*Configure Dragons JIRA*' screen will appear. Click '*Incoming Authentication*' in the left-hand menu.
# The outgoing authentication page will appear with the '*Trusted Applications*' tab active. Click '*Configure*' then '*Apply*' to enable trusted applications for incoming authentication.
# Do the same for incoming authentication. Click '*Close*' when done.
# Click '*JIRA Settings*' next to your '*Dragons JIRA*' application link
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox and click '*Save*'. 
# Now you will set up an entity link from your FishEye repository to your JIRA project, to enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. 
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'. 
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and click '*Application Links*' from the menu that appears.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' then click '*Dragons JIRA (JIRA)*' from the dropdown menu.
# The 'Enter link details' screen will appear. Enter the following details:
#* Key: {{{color:blue}*DRA*{color}}}
#* Alias: {{{color:blue}*Dragons*{color}}}
# Click '*Create*'. 
# Click the '*Server*' link in the left-hand menu under 'Global Settings'. 
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel under 'System'.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
#* URL Paths to Allow: Add these paths to the existing paths, one per line:
#** {{/plugins/servlet/applinks/whoami}}
#** {{/secure/CreateSubTaskIssueDetails.jspa}}
#** {{/browse}}
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065957</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098643</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065954</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098642</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* Display Base URL: Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Now you will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. Click '*Edit default JIRA Server mappings*'.
# The 'Default Mappings for JIRA Projects' screen will appear. Click '*add all*' then click '*Save*'.
# Next you will reassure FishEye that it can trust your JIRA server. Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065953</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">177898124</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">177963063</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[ethan.cane]]></property>
<property name="creationDate">2008-12-13 10:02:49.645</property>
<property name="lastModificationDate">2008-12-13 10:02:49.645</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098640</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.2.3*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.2.3*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.2.3*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye Admin screens in your FishEye browser window/tab.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065951</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098653</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.5.5*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.5.5*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.5.5-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows by running {{\{BAMBOO_INSTALL\InstallAsService.bat}} If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}} You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.5.5*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment] (note, you do not need to configure an IDE). The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar and log in with username charlie and the password you specified when prompted.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see an '*All local agents*' link in the '*Agents*' column for '*Maven 2*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.0.6\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.0.6/apache-maven}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.4.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository -- Select '*FishEye*'.
#** FishEye URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://foobar:8060/]}} or {{[http://fisheye.foobar.com:8060/]}}.
#** Repository Name --- {{Dragons}}
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065964</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098648</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065959</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">820</id>
<property name="name"><![CDATA[integration]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2006-01-02 03:29:20.273</property>
<property name="lastModificationDate">2008-07-21 14:03:11.507</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098601</id>
<property name="body"><![CDATA[Requirements: *Sun JDK 1.5 or higher*. Note that the JRE alone is not enough.

If you do not have the right version of the Java Development Kit (JDK) already installed, follow the steps below to get it.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download the [Sun Java SE Development Kit|http://java.sun.com/javase/downloads/index.jsp] -- Get the latest JDK 6.
# Follow the [Sun installation instructions|http://java.sun.com/javase/6/webnotes/install/index.html].
# Make sure you have a {{JAVA_HOME}} environment variable pointing to the root directory of the JDK. Some JDK installers set this automatically.
#* Check by typing one of the following into a command window, depending on your operating system.
#** On Windows: {{echo %JAVA_HOME%}}
#** On Linux or UNIX: {{echo $JAVA_HOME}}
#* If the above command does not show you the path to your JDK, please refer to the Crowd instructions on [setting JAVA_HOME|CROWD:Setting JAVA_HOME].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065912</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916513</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.1 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201850998</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916514</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201850999</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208535690</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Adding Users

{color:red}TBD: Must test this procedure.{color}

During the initial setup, you added just one user: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators.

We recommend that you use Crowd for all user and group management. Here is a suggested plan of action:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{info:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{info}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | {color:red}Suggested text -- need to test it when Dragons is up and running.{color}
Now that you have enabled Crucible, you can start reviewing the code
committed to your repository:
# Go to the activity stream and find a commit.
# Click the small cog on the right-hand side and select '*Create
Review*' from the dropdown menu.
# Select some reviewers.
# Click '*Start Review*'.
\\
\\
{color:red}Alternative text -- but is too low-level.{color}
With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208502923</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098603</id>
<property name="body"><![CDATA[Requirements: *PostgreSQL version 8.3.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download [PostgreSQL|http://www.postgresql.org/download/] -- Get the latest 8.3.x. For the simplest installation, choose one of the one-click installers.
# Install PostgreSQL. If you chose one of the PostgreSQL one-click installers, this is simple: Run the executable that you downloaded and follow the prompts. If necessary, you can refer to the [PostgreSQL installation instructions|http://www.enterprisedb.com/learning/pginst_guide.do]. 
# Enter a password for the super user ('postgres').
# Accept the default port {{5432}}.
# Accept all the other default settings.
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html] and save it locally for later use.
(!) Internet Explorer may rename the file extension from '{{.jar}}' to '{{.zip}}' when you download it. If you are using Internet Explorer, please rename the file so that it has a '{{.jar}}' extension after downloading it.
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065914</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916516</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.1 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851001</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098592</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065902</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327102</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now you can choose to add a JIRA issue via GreenHopper or via the standard JIRA interface. Let's do it via GreenHopper. Then you can create a 'sprint' and add your two issues to the sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the 'Edit' icon on your '{color:blue}*DRA-1*{color}' card and change the following values:
#* Affects Version: {{1.0}}
#* Fix Version: {{2.0}}
# Close the edit window, so that you see your planning board again. There will now be no cards visible, because by default the planning board shows unscheduled issues.
# Select version '*2.0*' in the dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.

# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.

(/) see the burndown chart
h2. Add the GreenHopper Gadget to your JIRA Dashboard

# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}

h2. Victory!

(/) see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294369</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098578</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# -The Add Content screen will appear. Click '*Browse Changesets*'.-
# -Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.-
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065887</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916506</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you can complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together the instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review. {color:red}*TBC*{color}
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis. {color:red}*TBC*{color}
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* [Atlassian Gadgets|GADGETS:]
* [Activity Stream|https://plugins.atlassian.com/plugin/details/5239] {color:red}*TBC*{color}
* [AppLinks|APPLINKS:] {color:red}*TBC*{color}

If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X, because the Mac is not a recommended platform for installation and integration of multiple server applications.
* *Source repository:* You must have your own source repository. The instructions assume that you are using SVN.{color:red}*TBC*{color}
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201850991</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098631</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite: [Crucible|http://www.atlassian.com/software/crucible/] for code review and [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to open the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username '{color:blue}*charlie*{color}', meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '{color:blue}*CR-1*{color}'. Please refer to the Crucible documentation on:
#* [Performing a review|CRUCIBLE:Performing the Review] that has been assigned to you.
#* [Adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
#* [Managing the review workflow|CRUCIBLE:Summarising and Closing the Review].
#* [Integrating your reviews with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
{panel}
_+Screenshot 1 (click to enlarge): A Crucible review+_
\\
\\
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '{color:blue}*Main*{color}', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065942</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098632</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065943</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098633</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}

h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone for Production Usage (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.7.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {nolink}[http://www.foobar.com:8090]{nolink}.
# Log in to Confluence with username {color:blue}{{{}{*}charlie{*}{}}}{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd\!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your JIRA server, one per line. You can find these values by checking the 'Remote Addresses' tab of the JIRA application you set up in Crowd previously, see [Step 4 of Dragons Stage 2 - Install JIRA|Dragons Stage 2 - Install JIRA#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your Confluence server, one per line. You can find these values by checking the 'Remote Addresses' tab of the Confluence application you set up in Crowd previously, see [Step 4. Hook Confluence up to Crowd|#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{{{nolink}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{nolink}}}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{{{nolink}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{nolink}}}
# Click '*Add*'.
{panel}


_{+}Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA{+}_
\\
\\  !JIRATrustedApp.png|thumbnail!\\
\\
_{+}Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget{+}_
\\
\\  !ConfluenceExternalGadgets.png|thumbnail!\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space.
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Paste the following code for the macro over the '*xxx*' text. It will look something like this (substitute your server name in place of 'coopers'):
{code}{gadget:url=http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml|width=450}
projectOrFilterId=project-10000&statType=resolution&isConfigured=true&refresh=false
{gadget}
{code}
#* Click the '*Preview*' tab. The preview page will show the pie chart of JIRA issues from your JIRA Dragons project on your page. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}{{{}{*}DRA-1{*}{}}}{color}, {color:blue}{{{}{*}DRA-2{*}{}}}{color} and {color:blue}{{{}{*}DRA-3{*}{}}}{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{{{nolink}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{nolink}}}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

_{+}Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

_{+}Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065944</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550412</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge01.png!
{column}
{column} 
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t+dragon+slayers+one+and+all!+I've+completed+stage+1+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517842</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098624</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}

h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone for Production Usage (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.7.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {nolink}[http://www.foobar.com:8090]{nolink}.
# Log in to Confluence with username {color:blue}{{{}{*}charlie{*}{}}}{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd\!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your JIRA server, one per line. You can find these values by checking the 'Remote Addresses' tab of the JIRA application you set up in Crowd previously, see [Step 4 of Dragons Stage 2 - Install JIRA|Dragons Stage 2 - Install JIRA#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your Confluence server, one per line. You can find these values by checking the 'Remote Addresses' tab of the Confluence application you set up in Crowd previously, see [Step 4. Hook Confluence up to Crowd|#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{{{nolink}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{nolink}}}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{{{nolink}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{nolink}}}
# Click '*Add*'.
{panel}


_{+}Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA{+}_
\\
\\  !JIRATrustedApp.png|thumbnail!\\
\\
_{+}Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget{+}_
\\
\\  !ConfluenceExternalGadgets.png|thumbnail!\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space.
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{note:title=Alternate Instructions}
{panel}*There is a Confluence bug preventing macros from external gadgets being added via the macro browser. Use these instructions if it is not fixed before publishing:*
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Paste the following code for the macro over the '*xxx*' text. It will look something like this (substitute your server name in place of 'coopers'):
{code}{gadget:url=http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml|width=450}
projectOrFilterId=project-10000&statType=resolution&isConfigured=true&refresh=false
{gadget}
{code}
#* Click the '*Preview*' tab. The preview page will show the pie chart of JIRA issues from your JIRA Dragons project on your page. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}{{{}{*}DRA-1{*}{}}}{color}, {color:blue}{{{}{*}DRA-2{*}{}}}{color} and {color:blue}{{{}{*}DRA-3{*}{}}}{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{{{nolink}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{nolink}}}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

{note:title=Ideal Instructions}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*Search*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}{{{}{*}DRA-1{*}{}}}{color}, {color:blue}{{{}{*}DRA-2{*}{}}}{color} and {color:blue}{{{}{*}DRA-3{*}{}}}{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{{{nolink}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/temp/SearchRequest.xml?jqlQuery=project+%3D+DRA&tempMax=1000{nolink}}}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

_{+}Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

_{+}Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065935</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213550411</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213517841</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327067</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 

# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper

h2. Add Another Issue and a Sprint
# create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.

(/) see the burndown chart
h2. Add the GreenHopper Gadget to your JIRA Dashboard

# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}

h2. Victory!

(/) see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294332</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">760</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2005-12-15 16:33:08.827</property>
<property name="lastModificationDate">2008-07-14 23:26:54.303</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098627</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}. 
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.4.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065938</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098628</id>
<property name="body"><![CDATA[{include:ALLDOC:_draft warning}
!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}

h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone for Production Usage (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.7.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {nolink}[http://www.foobar.com:8090]{nolink}.
# Log in to Confluence with username {color:blue}{{{}{*}charlie{*}{}}}{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd\!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your JIRA server, one per line. You can find these values by checking the 'Remote Addresses' tab of the JIRA application you set up in Crowd previously, see [Step 4 of Dragons Stage 2 - Install JIRA|Dragons Stage 2 - Install JIRA#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your Confluence server, one per line. You can find these values by checking the 'Remote Addresses' tab of the Confluence application you set up in Crowd previously, see [Step 4. Hook Confluence up to Crowd|#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{{{nolink}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{nolink}}}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{{{nolink}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{nolink}}}
# Click '*Add*'.
{panel}


_{+}Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA{+}_
\\
\\  !JIRATrustedApp.png|thumbnail!\\
\\
_{+}Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget{+}_
\\
\\  !ConfluenceExternalGadgets.png|thumbnail!\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space.
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Paste the following code for the macro over the '*xxx*' text. It will look something like this (substitute your server name in place of 'coopers'):
{code}{gadget:url=http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml|width=450}
projectOrFilterId=project-10000&statType=resolution&isConfigured=true&refresh=false
{gadget}
{code}
#* Click the '*Preview*' tab. The preview page will show the pie chart of JIRA issues from your JIRA Dragons project on your page. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}{{{}{*}DRA-1{*}{}}}{color}, {color:blue}{{{}{*}DRA-2{*}{}}}{color} and {color:blue}{{{}{*}DRA-3{*}{}}}{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{{{nolink}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{nolink}}}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

_{+}Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

_{+}Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065939</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916530</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}
{panel}
h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851015</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098620</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065931</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098619</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the JIRA user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E jirauser
# Create the JIRA database:
/opt/PostgreSQL/8.4/bin/createdb -O jirauser jira
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065930</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098622</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}. 
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.4.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065933</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098621</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.4.1 for JIRA 4.1.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.4.1 for JIRA 4.1*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*License Details*' in the left-hand panel (in the 'GreenHopper' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to add a JIRA issue, edit and move JIRA issues through the workflow stages via the GreenHopper Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. 

First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, then add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon (a pencil icon that appears on mouseover) next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Select '*Close Issue*' and leave all other values at their defaults. Click '*Update*'.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardUpdated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Use the 'Scrum' Template for your Project and Add a Story

GreenHopper includes a 'Scrum' project template for projects using the 'Scrum' methodology. This template adds custom fields like ranking fields, story points, etc, to your project. It also allows you to create stories, epics and technical tasks. You will now apply this template to your project and create a story.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the '*Tools*' menu on the planning board and click '*Configuration*'. 
# The project configuration page will appear. Select '*Scrum*' from the '*Project Template*' dropdown menu (in the 'Project Templates' section).
# Click '*Change template*' on the confirmation window. The 'Scrum' project template will be applied.
# Next, you will create a new story. Go back to your planning board and click '*New Card*'. Enter the following values:
#* Card type: {{Story}}
#* Priority: {{Major}}
#* Summary: {{As a Dragon Slayer, I would like to be able to wield an extremely big sword.}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Business Value: {{10}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
#* Story Points: {{10}}
# Click '*Create and Close*', to create the story. You will see your planning board again with your story displayed.
{panel}

+_Screenshot 3 (click to enlarge): The GreenHopper planning board with story_+
\\
\\
!GreenHopperPlanningBoardStory.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select Select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legend*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065932</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916535</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851021</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098610</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the JIRA user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E jirauser
# Create the JIRA database:
/opt/PostgreSQL/8.3/bin/createdb -O jirauser jira
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065921</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098609</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.1.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.1.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* --- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* --- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* --- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* --- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* --- Enter the password you chose in step 1 [above|#database].
#** *Schema* --- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'. 
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.1.1*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}/bin/config.sh}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{/usr/local/jira-home/}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* --- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* --- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* --- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* --- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* --- Enter the password you chose in step 1 [above|#database].
#** *Schema* --- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'. 
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065920</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098612</id>
<property name="body"><![CDATA[# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Click '*Update*'.
# Enable sub-tasks:
#* Click '*Sub-Tasks*' in the left-hand panel (in the 'Global Settings' section).
#* The 'Sub-Tasks' screen will appear. Click '*Enable*'.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065923</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628120</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660878</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:47:07.651</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:47:07.651</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628121</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660879</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:47:16.698</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:47:16.698</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628118</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660876</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:46:34.603</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:46:34.603</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916579</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851066</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628119</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660877</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:46:59.685</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:46:59.685</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916577</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851064</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628117</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660875</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:44:55.974</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:44:55.974</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916575</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851062</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916576</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851063</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628129</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660887</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:50:10.263</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:50:10.263</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522323</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Adding Users

{color:red}Must test this procedure.{color}

During the initial setup, you added just one user: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators.

We recommend that you use Crowd for all user and group management. Here is a suggested plan of action:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{info:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{info}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489707</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628126</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660884</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:49:29.387</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:49:29.387</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522321</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Adding Users

During the initial setup, you added just one user: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators.

We recommend that you use Crowd for all user and group management. Here is a suggested plan of action:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{info:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{info}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489705</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628124</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660882</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:48:07.173</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:48:07.173</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628125</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660883</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:49:14.233</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:49:14.233</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628122</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660880</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:47:29.827</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:47:29.827</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916583</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

xxxxxxxxxxxx

h2. Step 2. Install Bamboo

# Install Bamboo

{anchor:setup}
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 10 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851070</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916584</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

xxxxxxxxxxxx

h2. Step 2. Install Bamboo

# Install Bamboo

{anchor:setup}
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 10 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851071</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628134</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660892</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:51:16.001</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:51:16.001</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628133</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660891</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:51:06.997</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:51:06.997</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628131</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660889</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:50:31.889</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:50:31.889</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">218628130</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">218660888</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-05-17 21:50:20.353</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-05-17 21:50:20.353</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423821</id>
<property name="body"><![CDATA[{warning:title=Work in progress}

!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA:* You will need the *standalone* distribution of *JIRA 4.0*.
** If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
** If you have an earlier version of JIRA, please [upgrade to JIRA 4.0|JIRA:JIRA 4.0 Upgrade Guide] before starting this integration exercise.
** These instructions assume that your JIRA is running on port 8080. If not, please adjust the instructions accordingly.


{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start stage 1. Meet the dragon if you dare!

* Stage 1
** Check your version of the JDK with the version specified on the above page. If necessary, upgrade to a later JDK.
** If you do not have a database server already installed, please install and set up your PostgreSQL database server as specified in [Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. If your JIRA is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL.
** Install and set up Crowd by following steps 3 to 5 in [Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

* [Dragons Stage 2 - Install JIRA]
** Set up JIRA database in PostgreSQL if not already done or using a different external database.
** If your JIRA installation is using the default HSQLDB, you will need to migrate to another database. 
*** Follow the instructions on [migrating your JIRA data to an external database].
** Create Charlie or use another master account throughout.
** Integrating with Crowd - if LDAP, then set up Crowd with LDAP or import. If other, import users etc into Crowd.
** Then add Crowd app and copy libs as usual.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391055</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203423770</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA:* You will need the *standalone* distribution of *JIRA 4.0*.
** If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
** If you have an earlier version of JIRA, please [upgrade to JIRA 4.0|JIRA:JIRA 4.0 Upgrade Guide] before starting this integration exercise.
** These instructions assume that your JIRA is running on port 8080. If not, please adjust the instructions accordingly.


{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start stage 1. Meet the dragon if you dare!

* Stage 1
** Check your version of the JDK with the version specified on the above page. If necessary, upgrade to a later JDK.
** If you do not have a database server already installed, please install and set up your PostgreSQL database server as specified in [Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. If your JIRA is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL.
** Install and set up Crowd by following steps 3 to 5 in [Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

* [Dragons Stage 2 - Install JIRA]
** Set up JIRA database in PostgreSQL if not already done or using a different external database.
** If your JIRA installation is using the default HSQLDB, you will need to migrate to another database. 
*** Follow the instructions on [migrating your JIRA data to an external database].
** Create Charlie or use another master account throughout.
** Integrating with Crowd - if LDAP, then set up Crowd with LDAP or import. If other, import users etc into Crowd.
** Then add Crowd app and copy libs as usual.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203391003</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916616</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851103</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916617</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}

{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki, with a dragon on the home page.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851105</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916618</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME\bin\run.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851106</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916598</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851085</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522376</id>
<property name="body"><![CDATA[In this step you will create some data in JIRA, including a project and an issue, for use in the subsequent stages of this integration procedure. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489762</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916592</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851079</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916591</id>
<property name="body"><![CDATA[{warning:title=Clover?}We need to decide whether Clover is part of the Dragon docs. Then we can decide whether to add the Clover gadget.{warning}

Congratulations! Stage 12 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard

h2. Step 2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851078</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916594</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together the instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review. {color:red}*TBC*{color}
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis. {color:red}*TBC*{color}
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* [Atlassian Gadgets|GADGETS:]
* [Activity Stream|https://plugins.atlassian.com/plugin/details/5239] {color:red}*TBC*{color}
* [AppLinks|APPLINKS:] {color:red}*TBC*{color}

If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X, because the Mac is not a recommended platform for installation and integration of multiple server applications.
* *Source repository:* You must have your own source repository. The instructions assume that you are using SVN.{color:red}*TBC*{color}
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851081</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">156663829</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[blane]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-05-07 01:31:40.651</property>
<property name="lastModificationDate">2008-05-15 20:32:07.088</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">229213518</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">229181012</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201916599</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}
{panel}
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. We will now refer to this location as FISHEYE_HOME.
# Launch FishEye from the command line, running {{FISHEYE_HOME\bin\run.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./bin/run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{panel}
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_HOME/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the '*Database Configuration*' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database. 
# Now click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_HOME/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data'. {color:#000000}There will be a short delay as the near-empty FishEye database is converted.{color}
{panel}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.2 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the URL of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular project. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# You will be sent to a page with a listing of FishEye settings for this repository. Click '*Test Connection*' under '*Repository Details*' to verify that Subversion is properly connected to FishEye. 
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 
{panel}

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (Single Sign On) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Define the FishEye application in Crowd. Crowd needs to be aware that the FishEye application will be making authentication requests to Crowd. We need to add the FishEye application to Crowd and map it to the _FishEye Directory:_
# Log in to the Crowd Administration Console|About the Crowd Administration Console and navigate to *Applications* > *Add Application*.
# Complete the *'Add Application' wizard* for the FishEye application. (i) The *Name* and *Password* values you specify in the 'Add Application' wizard must match the '*Application name*' and '*Application password*' that you will set in FishEye's '*Crowd Authentication Settings*' screen. (See the steps below!?)
# Specify which users can log in to FishEye. Once Crowd is aware of the FishEye application, Crowd needs to know which users can authenticate (log in) to FishEye via Crowd. As part of the 'Add Application' wizard, you will set up your directories and group authorisations for the application. We will allow the entire _FishEye Directory_ to authenticate.
# Specify the address from which FishEye can log in to Crowd. As part of the 'Add Application' wizard, you will set up FishEye's IP address. This is the address which FishEye will use to authenticate to Crowd. 
# Now we will Configure FishEye to use Crowd's authenticator. Log in to the FishEye Administration screens and navigate to '*Security*'. 
# Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* *Application name* -- The name for the FishEye application you specified in the steps above.
#* *Application password* -- The password you specified in the steps above.
#* *Crowd URL* -- {{http://localhost:8095/crowd/services/}} 
\\(i) The trailing slash is required.
#* *Auto-add* -- Select '*Create a FishEye user on successful login*' (default) to ensure that your Crowd users will be automatically enrolled into FishEye when they first log in via Crowd.
#* *Single sign on (SSO)* --- Controls whether FishEye should attempt to participate in a single sign on (SSO) environment.
#** Select '*Enabled*' (default) if you want FishEye to use Crowd's SSO capability. 
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log into FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye. Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851086</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037143</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
Click a news item below to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

{blog-posts:5|content=titles}

h2. Integration Points

Here are a few of the ways our products work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004519</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522144</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the 'Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489515</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037144</id>
<property name="body"><![CDATA[{section}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]
* [Beyond JIRA|http://www.atlassian.com/beyond/]
{panel}
{column:width=40%}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
Click a news item below to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

{blog-posts:5|content=titles}

h2. Integration Points

Here are a few of the ways our products work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004520</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522147</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489518</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201326986</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. (color:red}pic here{color}. Click with the left mouse button, then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Projects and categories' and other configuration fields in the gadget.
#* Find the '*Projects and categories*' field in the 'Assigned to Me' gadget and click '*Dragons*' in the list of projects.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget in the same way.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color} and the state of the open issues (only 1 issue at the moment). The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294248</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201326981</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

{color:red}Some temporary notes for initial testing:
* Do not install a licence key when testing -- it doesn't work yet, and will work without the licence.
* There isn't a gadget yet -- will be available with m5?
* The portlet is more or less OK, but you can't save prefs?
{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.

# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper

h2. Add Another Issue and a Sprint
# create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.

(/) see the burndown chart
h2. Add the GreenHopper Gadget to your JIRA Dashboard

# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}

h2. Victory!

(/) see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294243</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037137</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
Click a news item below to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

{blog-posts:5|content=titles}

h2. Integration Points

Here are a few of the ways our products work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004513</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037138</id>
<property name="body"><![CDATA[{section}
{column:width=50%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{column}
{column:width=50%}
{panel:title=News, Links and Resources|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Want to know more? Take a look at our [News, Links and Resources].
{panel}
{column}
{section}

{panel:title=Atlassian Integration Points|borderStyle=solid\|borderColor=#ccc \|titleBGColor=#5cc35c\|bgColor=#ddfddd}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:page=Integration Points|depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004514</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037139</id>
<property name="body"><![CDATA[{section}
{column:width=50%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{column}
{column:width=50%}
{panel:title=News, Links and Resources|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Want to know more? Take a look at our [News, Links and Resources], or follow the links in the table of contents on the left.
{panel}
{column}
{section}

{panel:title=Atlassian Integration Points|borderStyle=solid\|borderColor=#ccc \|titleBGColor=#5cc35c\|bgColor=#ddfddd}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:page=Integration Points|depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004515</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522132</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the 'Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | A summary of what you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489503</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201326969</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

{color:red}Some temporary notes for initial testing:
* Do not install a licence key when testing -- it doesn't work yet, and will work without the licence.
* There isn't a gadget yet -- will be available with m5?
* The portlet is more or less OK, but you can't save prefs?
{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294231</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522134</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the 'Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489505</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677234</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{Dragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710411</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677230</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. (color:red}pic here{color}. Click with the left mouse button, then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Projects and categories' and other configuration fields in the gadget.
#* Find the '*Projects and categories*' field in the 'Assigned to Me' gadget and click '*Dragons*' in the list of projects.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget in the same way.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color} and the state of the open issues (only 1 issue at the moment). The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710407</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677229</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{Dragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8080{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710406</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427953</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETS:Gadgets and Dashboards Development Hub]
* [REST APIs|DEVNET:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover APIs|CLOVER:] --- please search for 'API' to find the relevant pages
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse] --- see links on home page
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203395407</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522190</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489563</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677216</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}


{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{Dragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, such that it does not contain 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8080{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710393</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201326946</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{Dragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294208</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677202</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}


{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{Dragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, such that it does not contain 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
The modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8080{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710378</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677199</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1 - Step 4|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{Dragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, such that it does not contain 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
The modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8080{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen appears. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710375</id>
</property>
</object>
<object class="SpaceDescription" package="com.atlassian.confluence.spaces">
<id name="id">166004749</id>
<property name="title"/><collection name="bodyContents" class="java.util.Collection"><element class="BodyContent" package="com.atlassian.confluence.core"><id name="id">166037346</id>
</element>
</collection>
<property name="version">1</property>
<property name="creatorName"><![CDATA[smaddox]]></property>
<property name="creationDate">2008-07-30 00:10:41.047</property>
<property name="lastModifierName"><![CDATA[smaddox]]></property>
<property name="lastModificationDate">2008-07-30 00:10:41.047</property>
<property name="versionComment"><![CDATA[]]></property>
<property name="originalVersion" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="contentStatus"><![CDATA[current]]></property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037080</id>
<property name="body"><![CDATA[This page summarises the single sign-on (SSO) feature provided by [Atlassian Crowd|http://www.atlassian.com/software/crowd] and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Using [Crowd|http://www.atlassian.com/software/crowd] for single sign-on (SSO), each person needs only one username and password to access all web applications. You only need to log in once, to Crowd or a Crowd-connected application. When you start another Crowd-connected application, you will be logged in automatically. Similarly, when you log out, you will be logged out of Crowd and the other applications at the same time.
{excerpt}

h2. Full Description
{include:CROWD:_About Crowd|nopanel=true}

h2. Components

h6. Type of Integration

Crowd is an application security framework that handles authentication and authorisation for your web-based applications. You will need to download and install Crowd, and then configure it to hook up your applications and user directories.
* [More about Crowd|http://www.atlassian.com/software/crowd]
* [Download Crowd|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Crowd documentation|CROWD:]:
{children:page=CROWD:Crowd Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Crowd Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004455</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037081</id>
<property name="body"><![CDATA[This page summarises the user and group management features offered by [Atlassian Crowd|http://www.atlassian.com/software/crowd] and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use [Crowd|http://www.atlassian.com/software/crowd] to manage users and groups simply and centrally. You can use Crowd's internal user directories or hook up your existing LDAP user bases, then link them to your web applications. Crowd provides an Administration Console for administrators as well as a Self-Service Console, allowing users to view their login permissions and to change their own passwords and user profiles.
{excerpt}

h2. Full Description
{include:CROWD:_About Crowd|nopanel=true}

h2. Components

h6. Type of Integration

Crowd is an application security framework that handles authentication and authorisation for your web-based applications. You will need to download and install Crowd, and then configure it to hook up your applications and user directories.
* [More about Crowd|http://www.atlassian.com/software/crowd]
* [Download Crowd|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa]

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Crowd documentation|CROWD:]:
{children:page=CROWD:Crowd Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Crowd Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004456</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327033</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work. You can get a new license at [my.atlassian.com|https://my.atlassian.com/license/evaluation?product=jira&version=4].
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294297</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">241600208</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Applications|http://www.atlassian.com]
* [Atlassian Developer Network|DEVNET:]
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=126] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Integrating your Atlassian Applications

Using our open API and scores of plugins, your Atlassian applications will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian applications. The [integration points|Integration Points] show the many different ways the applications work together and how you can make it happen.


h2. Integration Points

Here are a few of the ways our applications work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">241567626</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327026</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. (color:red}pic here{color}. Click with the left mouse button, then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Projects and categories' and other configuration fields in the gadget.
#* Find the '*Projects and categories*' field in the 'Assigned to Me' gadget and click '*Dragons*' in the list of projects.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget in the same way.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color} and the state of the open issues (only 1 issue at the moment). The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294290</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327029</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work. You can get a new license at [my.atlassian.com|https://my.atlassian.com/license/evaluation?product=jira&version=4].
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294293</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327028</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. (color:red}pic here{color}. Click with the left mouse button, then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Projects and categories' and other configuration fields in the gadget.
#* Find the '*Projects and categories*' field in the 'Assigned to Me' gadget and click '*Dragons*' in the list of projects.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget in the same way.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color} and the state of the open issues (only 1 issue at the moment). The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294292</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037090</id>
<property name="body"><![CDATA[This page summarises the [JIRA Issues macro|DOC:JIRA Issues Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Issues macro|DOC:JIRA Issues Macro] to display a list of [JIRA|http://www.atlassian.com/software/jira/] issues on a [Confluence|http://www.atlassian.com/software/confluence/] page. The list is shown in tabular format, and is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Issues macro|DOC:JIRA Issues Macro] allows you to display a list of issues from a JIRA site within a page in [Confluence|http://www.atlassian.com/software/confluence/].

In other words, if you have your own JIRA site, your Confluence page can show a dynamically-updated list of issues from your JIRA project. You can also show a list of issues from any JIRA site to which you and your readers have access.

h2. Components

h6. Type of Integration

The JIRA Issues macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Issues macro|DOC:JIRA Issues Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004465</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327019</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* {{C:\data\jira-home\plugins\installed-plugins}} on Windows.
#* {{/var/jira-home/plugins/installed-plugins}} on UNIX.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# *Setup GreenHopper* \- install the license key.

# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper

h2. Add Another Issue and a Sprint
# create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.

(/) see the burndown chart
h2. Add the GreenHopper Gadget to your JIRA Dashboard

# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}

h2. Victory!

(/) see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294283</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">1104</id>
<property name="name"><![CDATA[jira]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2006-01-16 19:33:03.766</property>
<property name="lastModificationDate">2008-07-25 00:15:24.245</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327000</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. (color:red}pic here{color}. Click with the left mouse button, then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Projects and categories' and other configuration fields in the gadget.
#* Find the '*Projects and categories*' field in the 'Assigned to Me' gadget and click '*Dragons*' in the list of projects.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget in the same way.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color} and the state of the open issues (only 1 issue at the moment). The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294263</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037133</id>
<property name="body"><![CDATA[{panel:title=Atlassian Integration Points|borderStyle=solid\|borderColor=#ccc \|titleBGColor=#5cc35c\|bgColor=#ddfddd}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004509</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327002</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294265</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">210796575</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETS:Gadgets and Dashboards Development Hub]
* [REST APIs|DEVNET:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|CONFDEV:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:Crowd Development Hub]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse] --- see links on home page
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">210763811</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037129</id>
<property name="body"><![CDATA[{panel:title=Atlassian Integration Points|borderStyle=solid\|borderColor=#ccc \|titleBGColor=#5cc35c\|bgColor=#ddfddd}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:depth=1|style=h6|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004504</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201326992</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

{color:red}Some temporary notes for initial testing:
* Do not install a licence key when testing -- it doesn't work yet, and will work without the licence.
* There isn't a gadget yet -- will be available with m5?
* The portlet is more or less OK, but you can't save prefs?
{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down JIRA.
# Copy the downloaded JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory. where {{\{JIRA_HOME\} is xxxxxxxxxx.
# Remove any jira-greenhopper-plugin-*.jar from your {JIRA_HOME}/atlassian-jira/WEB-INF/lib directory.???????
# Restart JIRA.
# *Setup GreenHopper* \- install the license key.

# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper

h2. Add Another Issue and a Sprint
# create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.

(/) see the burndown chart
h2. Add the GreenHopper Gadget to your JIRA Dashboard

# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}

h2. Victory!

(/) see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294255</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201326998</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install].
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# *Setup GreenHopper* \- install the license key.

# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper

h2. Add Another Issue and a Sprint
# create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.

(/) see the burndown chart
h2. Add the GreenHopper Gadget to your JIRA Dashboard

# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}

h2. Victory!

(/) see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294261</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">204080042</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}') on the 'Source' tab in JIRA.

(/) You can also click through from FishEye to JIRA, by clicking the issue key. Try it by clicking '{color:blue}*DRA-1*{color}' in your FishEye view.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">204047348</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522014</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse, you can:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | [Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489382</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677101</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover APIs|CLOVER:] --- please search for 'API' to find the relevant pages
* [Atlassian IDE Plugin for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse] --- see links on home page
* [Atlassian IDE Plugin for IDEA|IDEPLUGIN:Atlassian IntelliJ Connector] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710275</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677076</id>
<property name="body"><![CDATA[Congratulations! Stage 12 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy! 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard

h2. Step 2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Slay the Dragon

{color:red}*Add a game here*{color} 

h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710248</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098267</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065534</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098269</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065536</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228098266</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228065533</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677194</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1 - Step 4|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{Dragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* At the top of the screen, click '*Browse*' and from the drop-down menu, select '*Confluence Admin*'.
#* The 'Administration Console' screen appears. On the left-hand side of the screen under 'Configuration', click '*General Configuration*'.
#* The 'General Configuration' screen appears. In the 'Site Configuration' section, click the '*Edit*' button.
#* Enter the full website address at which Confluence is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Or specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Create a Wiki space


# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)


h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710370</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522076</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | [Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

| Installation | {color:red}WIP{color} Clover is available xxxxxx. Since you have already installed Bamboo, it is very simple to enable the Clover plugin. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | {color:red}WIP{color} [Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| {color:red}WIP{color} See our [website|http://www.atlassian.com/software/crucible/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489445</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">224198712</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">224329730</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[koprax]]></property>
<property name="creationDate">2010-09-16 07:59:21.673</property>
<property name="lastModificationDate">2010-09-16 07:59:21.673</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677174</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1 - Step 4|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}}
#** Password -- {{AtlassianDragons}}
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 

#* Base URL -- Enter the full website address at which Confluence is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.

# Log out of Confluence, but leave it running.
{panel}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

xxxxxxxxxxxxxxx


Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Create a Wiki space


# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)


h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710348</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522126</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we have chosen to use Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key: {color:red}WIP{color} 
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | {color:red}WIP{color} [Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| {color:red}WIP{color} See our [website|http://www.atlassian.com/software/crucible/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489498</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166036980</id>
<property name="body"><![CDATA[This is a new set of documentation. We hope that it will become your first port of call for information on making your [Atlassian products|http://www.atlassian.com] work together.

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.

Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.

{tip:title=Watch this space!}
This documentation is currently under development. We plan to add more information about the existing integration points as soon as possible, and keep adding new integration points as the new software becomes available.
{tip}]]></property>
<property name="content" class="BlogPost" package="com.atlassian.confluence.pages"><id name="id">166004350</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">228819249</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">228917274</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[matthias.bauch@avono.de]]></property>
<property name="creationDate">2010-12-16 04:36:42.716</property>
<property name="lastModificationDate">2010-12-16 04:36:42.716</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677159</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/ConfluenceDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database.
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1 - Step 4|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your JIRA server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click '*Custom Installation*'



#* Base URL -- Enter the full website address at which Confluence is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.

#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

xxxxxxxxxxxxxxx


Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Create a Wiki space


# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)


h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710333</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166036991</id>
<property name="body"><![CDATA[When we say 'integration point', we mean a way in which the Atlassian products work together. It is a fairly broad term, basically meaning something you may want to do.

For example, you may want to display your JIRA issues on a Confluence page. That is an integration point. Or you may want to implement single sign-on across all your Atlassian products. That is another integration point.

Here are some of the ways the products work together. Click an item to see more details of the integration point and how you can make it happen.

{section}
{column:width=150px}
{children:depth=1|style=h6|excerpt=true}
{column}
{column:width=200px}
&nbsp;
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004363</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427908</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover APIs|CLOVER:] --- please search for 'API' to find the relevant pages
* [Atlassian IDE Plugin for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse] --- see links on home page
* [Atlassian IDE Plugin for IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203395360</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918016</id>
<property name="body"><![CDATA[This page introduces the Atlassian IntelliJ Connector and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IntelliJ Connector displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. 
{excerpt}

+_Screenshot: Bamboo Builds in an IDEA Tool Window_+
\\
\\
!IDEPLUGIN:_Flagship Image for IDEA Bamboo^BambooFailedTests.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IntelliJ Connector is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IntelliJ Connector documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian IntelliJ Connector|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852605</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918018</id>
<property name="body"><![CDATA[This page introduces the Atlassian IntelliJ Connector and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IntelliJ Connector integrates [JIRA|http://www.atlassian.com/software/jira] issues into your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. 
{excerpt}

+_Screenshot: JIRA Issues in an IDEA Tool Window_+
\\
\\
!IDEPLUGIN:_Flagship Image for IDEA JIRA^JIRAWithContextMenu.png|border=1,bordercolor=gray!
h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IntelliJ Connector is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IntelliJ Connector documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian IntelliJ Connector|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852607</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674758</id>
<property name="body"><![CDATA[{color:red}*Problems?*{color} Please go immediately to the [Dragon Slayers' Forum].
{color:green}*Victory?*{color}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Please continue.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707795</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918020</id>
<property name="body"><![CDATA[This page introduces the Atlassian Eclipse Connector and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{excerpt}
The Atlassian Connector for Eclipse displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your [Eclipse|http://www.eclipse.org/] development environment. 
{excerpt}

+_Screenshot: Bamboo Watched Plans and Build Log in Eclipse_+
\\
\\
!IDEPLUGIN:_Flagship Image for Eclipse Bamboo^EclipseBuildLog.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for Eclipse|nopanel=true}

h2. Components

The Atlassian Connector for Eclipse is a plugin that you will install and configure in [Eclipse|http://www.eclipse.org/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for Eclipse Plugin|nopanel=true}

h2. Documentation

Please refer to the [documentation for the Atlassian Connector for Eclipse|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian Connector for Eclipse|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852609</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674752</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragonslayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Ready, steady, tweet?}Please read the introduction [below|#introduction].
If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

Why would we ask you to undertake this quest?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can make the process better.
* We hope you'll have some *fun* along the way.
* It's another excuse to give away some *t-shirts*.

Setting up an integrated suite of Atlassian applications will give you awesome results. But we know that the setup process can be long and difficult. We want to improve the process and we'd like your feedback to help us do that.

We have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h6. Getting Help

If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

[Go|#go].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707789</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674754</id>
<property name="body"><![CDATA[Problems? please go immediately to the [Dragon Slayers' Forum]
Victory? Please continue.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707791</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674760</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Ready, steady, tweet?}Please read the introduction [below|#introduction].
If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! #AtlassianDragons] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

Why would we ask you to undertake this quest?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can make the process better.
* We hope you'll have some *fun* along the way.
* It's another excuse to give away some *T-shirts*.

Setting up an integrated suite of Atlassian applications will give you awesome results. But we know that the setup process can be long and difficult. We want to improve the process and we'd like your feedback to help us do that.

We have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a T-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.  

h6. Getting Help

If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

[Read, steady, go|#go].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707797</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240223525</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then select '*Administration*' from the dropdown menu
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS Feed*'.

(/) Click the changeset number ({{153936}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240190937</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">221515389</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.1.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.1.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* --- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* --- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* --- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* --- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* --- Enter the password you chose in step 1 [above|#database].
#** *Schema* --- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'. 
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.1.1*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.sh}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* --- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* --- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* --- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* --- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* --- Enter the password you chose in step 1 [above|#database].
#** *Schema* --- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'. 
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">221450841</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">207028318</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">170688545</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[gerhard.mueller@tngtech.com]]></property>
<property name="creationDate">2009-11-17 14:15:20.795</property>
<property name="lastModificationDate">2009-11-17 14:15:20.795</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">166756363</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[mwball@gmail.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-08-21 06:34:35.750</property>
<property name="lastModificationDate">2008-08-21 06:34:35.750</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918014</id>
<property name="body"><![CDATA[This page introduces the Atlassian IntelliJ Connector and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description

{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}{excerpt}
The Atlassian IntelliJ Connector lets you work with your [Crucible|http://www.atlassian.com/software/crucible] code reviews within your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. {excerpt}
_{+}Screenshot: Crucible Reviews in an IDEA Tool Window{+}_\\
\\ !IDEPLUGIN:_Flagship Image for IDEA Crucible^CrucibleReview.png|border=1,bordercolor=gray!

h2. Full Description

{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IntelliJ Connector is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix

{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IntelliJ Connector documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian IntelliJ Connector|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852603</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425459</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392775</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">166756392</id>
<property name="name"><![CDATA[point]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2008-08-27 18:17:54.304</property>
<property name="lastModificationDate">2008-08-27 18:17:54.304</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425472</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have included the JIRA issue key {color:blue}{*}DRA-1{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392789</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425481</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392799</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425367</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392683</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425372</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392688</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425371</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392687</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425375</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392691</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425376</id>
<property name="body"><![CDATA[[here|#dragons7]

!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392692</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994484</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Adding Users

{color:red}TBD: Must test this procedure.{color}

During the initial setup, you added just one user: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators.

We recommend that you use Crowd for all user and group management. Here is a suggested plan of action:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{info:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{info}

h4. Running Bamboo in a Console Window

If you experience problems with running Bamboo as a Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}. 

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | {color:red}Suggested text -- need to test it when Dragons is up and running.{color}
Now that you have enabled Crucible, you can start reviewing the code
committed to your repository:
# Go to the activity stream and find a commit.
# Click the small cog on the right-hand side and select '*Create
Review*' from the dropdown menu.
# Select some reviewers.
# Click '*Start Review*'.
\\
\\
{color:red}Alternative text -- but is too low-level.{color}
With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961729</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994483</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{color:red}TO DO: Must test this procedure.{color}

During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators.

We recommend that you use Crowd for all user and group management. Here is a suggested plan of action:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{info:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961728</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">180584704</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">180617255</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[ploegj]]></property>
<property name="creationDate">2009-02-21 03:05:58.970</property>
<property name="lastModificationDate">2009-02-21 03:05:58.970</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425408</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392724</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208175217</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}') on the 'Source' tab in JIRA.

(/) You can also click through from FishEye to JIRA, by clicking the issue key. Try it by clicking '{color:blue}*DRA-1*{color}' in your FishEye view.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208142449</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425419</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392735</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215517486</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.2 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.2 for JIRA 4.0*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefaultV2.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to add a JIRA issue, edit and move JIRA issues through the workflow stages via the GreenHopper Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. 

First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, then add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon (a pencil) next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardUpdatedV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select Select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legen*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3GadgetsV2.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215485112</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425310</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a Subversion repository to connect to your FishEye 'Dragons' repository.

(i) FishEye supports [Subversion home page|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392626</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215517481</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215485107</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918146</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, tell Bamboo where to put its installation directory. For example: {{C:/Program Files/Bamboo}} or {{C:/atlassian/bamboo}}. 
(Note the forward slashes.)
From this point onwards, we will refer to this directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its Bamboo Home directory. For example: {{C:/data/bamboo-home}}
(Note the forward slashes.)
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}\BambooConsole.bat}}. {color:red}Does the installer start Bamboo immediately? Do they get a chance to copy the driver first?{color}
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should be: {{tcp://coopers:54663}}. Or specify a website address, such as: {{tcp://bamboo.foobar.com:54663}}.
# Enter the following information to connect to your Crowd database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{My Company's Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Leave this checkbox unselected at this stage.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
{panel} 

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852737</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425323</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392639</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425325</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a source code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion home page|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392641</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425320</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a source code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion home page|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392636</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918128</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation and to set up JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.

(/) _Hint_: Commit a changeset to your repository and put '*DRA-2*' into the commit comment. You will see the changeset appear in the 'Source' tab on your 'DRA-2' issue.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852719</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918130</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852721</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918124</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. (The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.)

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852715</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208175179</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}') on the 'Source' tab in JIRA.

(/) You can also click through from FishEye to JIRA, by clicking the issue key. Try it by clicking '{color:blue}*DRA-1*{color}' in your FishEye view.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208142410</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425329</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392645</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">221515222</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Applications|http://www.atlassian.com]
* [Beyond JIRA|http://www.atlassian.com/beyond/]
* [Atlassian Developer Network|DEVNET:]
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=126] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Integrating your Atlassian Applications

Using our open API and scores of plugins, your Atlassian applications will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian applications. The [integration points|Integration Points] show the many different ways the applications work together and how you can make it happen.


h2. Integration Points

Here are a few of the ways our applications work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">221450672</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425357</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}*Dragons*{color}) on the 'Source' tab in JIRA.

(/) You can also click through from FishEye to JIRA, by clicking the issue key. Try it by clicking '{color:blue}*DRA-1*{color}' in your FishEye view.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392673</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215517500</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.2*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4.2-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox, to enable Gzip compression.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215485126</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425356</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons (DRA)*' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}*Dragons*{color}) on the 'Source' tab in JIRA.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392672</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215517501</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 7 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 7 gadgets_+
\\
\\
!JIRADashboardStage8.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215485127</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215517496</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.1.2*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.1.2*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.1.2*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboardV2.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215485122</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918108</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. (The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.)

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852699</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425352</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons (DRA)*' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}*Dragons*{color}) on the 'Source' tab in JIRA.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392668</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215517497</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Now you will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. Click '*Edit default JIRA Server mappings*'.
# The 'Default Mappings for JIRA Projects' screen will appear. Click '*add all*'.
# Next you will reassure FishEye that it can trust your JIRA server. Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215485123</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425351</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.

(/) _Hint_: Commit a changeset to your repository and put '*DRA-2*' into the commit comment. You will see the changeset appear in the 'Source' tab on your 'DRA-2' issue.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392667</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918098</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Bamboo 2.4.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}Bamboo\webapp\WEB-INF\classes\bamboo-init.properties}}. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.{color}
#* Add a line specifying the {{bamboo.home}} property, with an absolute path to your Bamboo home directory. For example:
{{bamboo.home=c:/bamboo/data}} {color:red}*Confirm that you have to add the line, and update Bamboo docs if necessary too.{color}
(Note the forward slashes.)
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.*{color}
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}\BambooConsole.bat}}.
{panel}
{expand}

{color:red}*UNIX instructions not done yet*.{color}
{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852689</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215517491</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215485117</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918099</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, tell Bamboo where to put its installation directory. For example: {{C:/Program Files/Bamboo}} or {{C:/atlassian/bamboo}}. 
(Note the forward slashes.)
From this point onwards, we will refer to this directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its Bamboo Home directory. For example: {{C:/data/bamboo-home}}
(Note the forward slashes.)
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}\BambooConsole.bat}}. {color:red}Does the installer start Bamboo immediately? Do they get a chance to copy the driver first?{color}
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should be: {{tcp://coopers:54663}}. Or specify a website address, such as: {{tcp://bamboo.foobar.com:54663}}.
# Enter the following information to connect to your Crowd database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{My Company's Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Leave this checkbox unselected at this stage.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
{panel} 

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852690</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">242</id>
<property name="name"><![CDATA[security]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2005-10-19 19:40:34.314</property>
<property name="lastModificationDate">2008-07-24 20:46:49.398</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945625</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

In this step you will configure Confluence to use Crowd for SSO and centralised user management. To do that, you will define the Confluence application in Crowd, define the Crowd user directory in Confluence, and configure the SSO property files. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} (Windows) or {{\{CROWD_INSTALL\}/start_crowd.sh}} (UNIX) and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If this address is not already present, add it: {{127.0.0.1}}.
# Connect Confluence to the Crowd user directory:
#* Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* Select '*User Directories*' from the '*Security*' section of the Confluence Administration Console.
#* Click '*Add Directory*', select type '*Atlassian Crowd*' and click '*Next*'.
#* The Crowd server configuration screen will appear. Enter the following information:
#** Name -- Accept the default value, {{Crowd Server}}.
#** Server URL -- Enter the web address of your Crowd server, e.g. {{http://www.foobar.com:8095/crowd}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence in the Crowd 'Add Application' wizard above.
#** Application Password -- Enter the password that you defined for Confluence in the Crowd 'Add Application' wizard above.
#** Crowd Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the Crowd directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*Crowd Server*', so that the Crowd directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Configure the Confluence property files for SSO:
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. 
#* Comment out the default {{authenticator}} node:
{code:xml}
<!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
{code}
#* Uncomment the line that contains the new authenticator: 
{code:xml}
<authenticator class="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>
{code}
#* Save the {{seraph-config.xml}} file.
#* Copy the {{crowd.properties}} file from {{\{CROWD_INSTALL\}/client/conf/}} to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}, replacing the existing file.
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#** application.name: {{confluence}}
#** application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
#* Save the {{crowd.properties}} file.
# (/) You now have SSO across Confluence, JIRA and Crowd! Try it:
#* Start your Confluence server again, and go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* If you are already logged in to Crowd, you will not need to log in to Confluence. SSO ensures that you are already logged in as {color:blue}*charlie*{color}.
#* Log out of Confluence.
#* Go to Crowd and click an option. Crowd will prompt you to log in. When you logged out of Confluence, SSO ensured that you logged out of Crowd and JIRA too.
#* Log in to JIRA, Confluence or Crowd. You will be logged in to all three.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application] and the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 3 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click '*Search*'.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
{panel}

_{+}Screenshot 4 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 5 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Confluence is on fire! I've completed stage 4 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240913232</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327582</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294881</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">161054721</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[cbang]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-06-11 13:26:28.531</property>
<property name="lastModificationDate">2008-07-24 10:57:19.014</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918084</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852675</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327573</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294871</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945620</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

In this step you will configure Confluence to use Crowd for SSO and centralised user management. To do that, you will define the Confluence application in Crowd, define the Crowd user directory in Confluence , and configure the SSO property files. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If this address is not already present, add it: {{127.0.0.1}}.
# Connect Confluence to the Crowd user directory:
#* Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* Select '*User Directories*' from the '*Security*' section of the Confluence Administration Console.
#* Click '*Add Directory*', select type '*Atlassian Crowd*' and click '*Next*'.
#* The Crowd server configuration screen will appear. Enter the following information:
#** Name -- Accept the default value, {{Crowd Server}}.
#** Server URL -- Enter the web address of your Crowd server, e.g. {{http://www.foobar.com:8095/crowd}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence in the Crowd 'Add Application' wizard above.
#** Application Password -- Enter the password that you defined for Confluence in the Crowd 'Add Application' wizard above.
#** Crowd Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the Crowd directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*Crowd Server*', so that the Crowd directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Configure the Confluence property files for SSO:
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. 
#* Comment out the default {{authenticator}} node:
{code:xml}
<!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
{code}
#* Uncomment the line that contains the new authenticator: 
{code:xml}
<authenticator class="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>
{code}
#* Save the {{seraph-config.xml}} file.
#* Copy the {{crowd.properties}} file from {{\{CROWD_INSTALL\}/client/conf/}} to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}, replacing the existing file.
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#** application.name: {{confluence}}
#** application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
#* Save the {{crowd.properties}} file.
# (/) You now have SSO across Confluence, JIRA and Crowd! Try it:
#* Start your Confluence server again, and go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* If you are already logged in to Crowd, you will not need to log in to Confluence. SSO ensures that you are already logged in as {color:blue}*charlie*{color}.
#* Log out of Confluence.
#* Go to Crowd and click an option. Crowd will prompt you to log in. When you logged out of Confluence, SSO ensured that you logged out of Crowd and JIRA too.
#* Log in to JIRA, Confluence or Crowd. You will be logged in to all three.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application] and the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 3 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click '*Search*'.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
{panel}

_{+}Screenshot 4 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 5 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Confluence is on fire! I've completed stage 4 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240913226</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918072</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852662</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425259</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create the JIRA user:
{noformat}
sudo -s -H -u postgres createuser -S -d -r -P -E jirauser
{noformat}
# Create the JIRA database:
{noformat}
sudo -s -H -u postgres createdb -O jirauser jira
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392573</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918073</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852663</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918068</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some optional JIRA features, as required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Click '*Update*'.
# Enable sub-tasks:
#* Click '*Sub-Tasks*' in the left-hand panel (in the 'Global Settings' section).
#* The 'Sub-Tasks' screen will appear. Click '*Enable*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'JiraOsUserAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852658</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918070</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852660</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327583</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294882</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327589</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294888</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327588</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.1 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL ?
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers.

Full details are in the [FishEye documentation|FISHEYE:JIRA Integration in FishEye].

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294887</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425273</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392589</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674537</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragonslayer T-shirt].  

h2. Rushing into the Dragon's Lair

Please read the introduction [below|#introduction].

{tip:title=Tweet?}If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA] for xxxxxx
* [GreenHopper] for xxxxxx
* [Confluence], the enterprise wiki
* [FishEye] for xxxxxxx
* [Bamboo] for xxxxxxx
* [Crowd] for xxxxxxx

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707542</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425271</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create the Bamboo user:
{noformat}
sudo -s -H -u postgres createuser -S -d -r -P -E bamuser
{noformat}
# Create the Bamboo database:
{noformat}
sudo -s -H -u postgres createdb -O bamuser bamboo
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392585</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425266</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create the Confluence user:
{noformat}
sudo -s -H -u postgres createuser -S -d -r -P -E confuser
{noformat}
# Create the Confluence database:
{noformat}
sudo -s -H -u postgres createdb -O confuser confluence
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392580</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327601</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together the instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review. {color:red}*TBC*{color}
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis. {color:red}*TBC*{color}
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* [Atlassian Gadgets|GADGETS:]
* [Activity Stream|https://plugins.atlassian.com/plugin/details/5239] {color:red}*TBC*{color}
* [AppLinks|APPLINKS:] {color:red}*TBC*{color}

If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X, because the Mac is not a recommended platform for installation and integration of multiple server applications.
* *Source repository:* You must have your own source repository. The instructions assume that you are using SVN.{color:red}*TBC*{color}
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294900</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327606</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.1 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should now be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294905</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201918048</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some optional JIRA features, as required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Click '*Update*'.
# Enable sub-tasks:
#* Click '*Sub-Tasks*' in the left-hand panel (in the 'Global Settings' section).
#* The 'Sub-Tasks' screen will appear. Click '*Enable*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852638</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425268</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create the FishEye user:
{noformat}
sudo -s -H -u postgres createuser -S -d -r -P -E fishuser
{noformat}
# Create the FishEye database:
{noformat}
sudo -s -H -u postgres createdb -O fishuser fisheye
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392582</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945674</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

In this step you will configure Confluence to use Crowd for SSO and centralised user management. To do that, you will define the Confluence application in Crowd, define the Crowd user directory in Confluence, and configure the SSO property files. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} (Windows) or {{\{CROWD_INSTALL\}\start_crowd.sh}} (UNIX) and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If this address is not already present, add it: {{127.0.0.1}}.
# Connect Confluence to the Crowd user directory:
#* Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* Select '*User Directories*' from the '*Security*' section of the Confluence Administration Console.
#* Click '*Add Directory*', select type '*Atlassian Crowd*' and click '*Next*'.
#* The Crowd server configuration screen will appear. Enter the following information:
#** Name -- Accept the default value, {{Crowd Server}}.
#** Server URL -- Enter the web address of your Crowd server, e.g. {{http://www.foobar.com:8095/crowd}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence in the Crowd 'Add Application' wizard above.
#** Application Password -- Enter the password that you defined for Confluence in the Crowd 'Add Application' wizard above.
#** Crowd Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the Crowd directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*Crowd Server*', so that the Crowd directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Configure the Confluence property files for SSO:
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. 
#* Comment out the default {{authenticator}} node:
{code:xml}
<!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
{code}
#* Uncomment the line that contains the new authenticator: 
{code:xml}
<authenticator class="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>
{code}
#* Save the {{seraph-config.xml}} file.
#* Copy the {{crowd.properties}} file from {{\{CROWD_INSTALL\}/client/conf/}} to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}, replacing the existing file.
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#** application.name: {{confluence}}
#** application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
#* Save the {{crowd.properties}} file.
# (/) You now have SSO across Confluence, JIRA and Crowd! Try it:
#* Start your Confluence server again, and go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* If you are already logged in to Crowd, you will not need to log in to Confluence. SSO ensures that you are already logged in as {color:blue}*charlie*{color}.
#* Log out of Confluence.
#* Go to Crowd and click an option. Crowd will prompt you to log in. When you logged out of Confluence, SSO ensured that you logged out of Crowd and JIRA too.
#* Log in to JIRA, Confluence or Crowd. You will be logged in to all three.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application] and the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 3 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click '*Search*'.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
{panel}

_{+}Screenshot 4 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 5 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Confluence is on fire! I've completed stage 4 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240913283</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425284</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392599</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327525</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion 1.4.5 repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Test Subversion repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294820</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327526</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294821</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327519</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion 1.4.5 repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Test Subversion repository

1. Open the FishEye Admin interface, and click '*Add Repository*'. 

2. Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 

3. Under '*Enable immediately*', select '*Yes*'. 

4. Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 

5. Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 

6. Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.

7. Click '*Add*'.

8. Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294814</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327532</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion 1.4.5 repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294827</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327533</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294828</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917752</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}


+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!




{color:red}
You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA..... Tell them to go and look.
Tell them what more they can do....
Full details are in the xxxxxxxxxxxxxxxx
{color}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852319</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917755</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}


+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!

As shown in the above screenshot, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. (The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.) 

+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!

As shown in the above screenshot, there is now also a 'Source' tab on your JIRA project. This tab will show the most recent changesets related to any issue in the project.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852322</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327530</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion 1.4.5 repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Test Subversion repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294825</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327507</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

1. Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 

2. Restart FishEye to have it pick up the driver.

3. Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.

4. Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.

5. Click 'Save & Migrate Data' to start the migration process.

{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

h3. Atlassian Test Subversion repository

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294802</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327505</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294800</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327515</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

1. Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 

2. Restart FishEye to have it pick up the driver.

3. Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.

4. Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.

5. Click 'Save & Migrate Data' to start the migration process.

{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

1. Open the FishEye Admin interface, and click '*Add Repository*'. 

2. Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 

3. Under '*Enable immediately*', select '*Yes*'. 

4. Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 

5. Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 

6. Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.

h3. Atlassian Test Subversion repository


{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294810</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327517</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

1. Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 

2. Restart FishEye to have it pick up the driver.

3. Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.

4. Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.

5. Click 'Save & Migrate Data' to start the migration process.

{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion 1.4.5 repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

1. Open the FishEye Admin interface, and click '*Add Repository*'. 

2. Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 

3. Under '*Enable immediately*', select '*Yes*'. 

4. Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 

5. Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 

6. Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.

7. Click '*Add*'.

8. Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Test Subversion repository

1. Open the FishEye Admin interface, and click '*Add Repository*'. 

2. Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 

3. Under '*Enable immediately*', select '*Yes*'. 

4. Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 

5. Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 

6. Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.

7. Click '*Add*'.

8. Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294812</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327551</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294847</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327561</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/confluence/data}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294858</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917726</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye

In this step you will define a JIRA server in the FishEye administration interface.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it.

To configure the FishEye Plugin in JIRA:

# Go to the '*JIRA Administration*' menu, then click '*FishEye Confguration*'. 
# In the '*Base URL*' field, enter the URL of your FishEye instance.
# Enter the username and password of a FishEye user?



(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852293</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917730</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye

In this step you will define a JIRA server in the FishEye administration interface.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear.  xxxxxxxx


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....


{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852297</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327535</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory, for example: {{c:\fisheye}}. 
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

# Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 
# Restart FishEye to have it pick up the driver.
# Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.
# Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.
# Click 'Save & Migrate Data' to start the migration process.
{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

Yo must already have a Subversion (version 1.1 or later) repository set up. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. 
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository).
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

h3. Atlassian Subversion Test repository

You can connect to a sample Subversion repository hosted by Atlassian, to confirm your configuration (You can easily add your own repositories to FishEye later on). 

# Open the FishEye Admin interface, and click '*Add Repository*'. 
# Enter a name and description for the repository. Under '*Repository type*', choose '*Subversion*'. 
# Under '*Enable immediately*', select '*Yes*'. 
# Under '*SVN URL*', enter the web address of the Subversion repository you are connecting to. {color:red}(Add in name of the Atlassian Test SVN repo when it's set up.){color}
# Under '*Path*', you can restrict FishEye to only look at a particular part of the repository, for example a particular branch. 
# Enter the username and password required to access the Subversion repository (this user account should have only read-only access to the repository.
# Click '*Add*'.
# Click the FishEye logo to return to the FishEye Dashboard. You should be able to see a list of recent commit messages for the repository. Click the Source tab to start browsing the contents of the repository. 

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Imagery here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294830</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917733</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye

In this step you will define a JIRA server in the FishEye administration interface.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}


+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!

{color:red}
(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

Tell them what more they can do....
Full details are in the xxxxxxxxxxxxxxxx
{color}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852300</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701136</id>
<property name="body"><![CDATA[{excerpt}5.3{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668572</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917736</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' raiod button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}


+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!

{color:red}
(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

Tell them what more they can do....
Full details are in the xxxxxxxxxxxxxxxx
{color}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852303</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701137</id>
<property name="body"><![CDATA[{excerpt}3.4.1{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668573</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327456</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294745</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917683</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye

In this step you will define a JIRA server in the FishEye administration interface.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
{panel}

h2. Step 2. Edit the Default Server Mappings

Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it.

To configure the FishEye Plugin in JIRA:

# Go to the '*JIRA Administration*' menu, then click '*FishEye Confguration*'. 
# In the '*Base URL*' field, enter the URL of your FishEye instance.
# Enter the username and password of a FishEye user?



(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852249</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327463</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294752</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701123</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows by running {{\{BAMBOO_INSTALL\InstallAsService.bat}} If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}} You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment] (note, you do not need to configure an IDE). The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar and log in with username charlie and the password you specified when prompted.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add builder as a server capabilities*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that the Java Home is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*':
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.4.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.7.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+8+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668556</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701124</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_09.png! 
_You're nearly there. Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardStage9.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668557</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701121</id>
<property name="body"><![CDATA[{excerpt}2.4.3{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668554</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327467</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294756</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701122</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668555</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701119</id>
<property name="body"><![CDATA[{excerpt}2.4.3{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668552</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327469</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

xxxxxxxxxxxx

h2. Step 2. Install Bamboo

# Install Bamboo

{anchor:setup}
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 10 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294759</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701120</id>
<property name="body"><![CDATA[{excerpt}2.7{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668553</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701118</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The '*Link to another server -- Step 1*' dialogue will appear. Enter the following information:
#* Server URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
# Click '*Next*'.
# The '*Link to another server -- Step 2*' dialogue will appear. Enter the following information:
#* Application Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* Application Name: {color:blue}*{{JIRA}}*{color}.
# Click '*Create*'. The 'Configure Application Links' page will display the new application link to your JIRA server.
# Now you will configure authentication for the application link. Click '*Configure*' next to your new application link.
# The '*Configure Dragons JIRA*' screen will appear. Click '*Incoming Authentication*' in the left-hand menu.
# The outgoing authentication page will appear with the '*Trusted Applications*' tab active. Click '*Configure*' then '*Apply*' to enable trusted applications for incoming authentication.
# Do the same for incoming authentication. Click '*Close*' when done.
# Click '*JIRA Settings*' next to your '*Dragons JIRA*' application link
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox and click '*Save*'. 
# Now you will set up an entity link from your FishEye repository to your JIRA project, to enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. 
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'. 
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and click '*Application Links*' from the menu that appears.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' then click '*Dragons JIRA (JIRA)*' from the dropdown menu.
# The 'Enter link details' screen will appear. Enter the following details:
#* Key: {{{color:blue}*DRA*{color}}}
#* Alias: {{{color:blue}*Dragons*{color}}}
# Click '*Create*'. 
# Click the '*Server*' link in the left-hand menu under 'Global Settings'. 
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel under 'System'.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
#* URL Paths to Allow: Add these paths to the existing paths, one per line:
#** {{/plugins/servlet/applinks/whoami}}
#** {{/secure/CreateSubTaskIssueDetails.jspa}}
#** {{/browse}}
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668551</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327441</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

a. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
b. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
c. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

h2. Step 3. Connect FishEye to the PostgreSQL database

Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). Restart FishEye or Crucible to have it pick up the driver.

Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.

Then click 'Test Connection' to verify that Crucible or FishEye can log in to the database.

If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that Crucible or FishEye is running on and that all the required privileges are present.

Click 'Save & Migrate Data' to start the migration process.

{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

h3. Atlassian Test Subversion repository

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294730</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327444</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0.S1}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the cross at the top of the edit window to close the window. You will see your planning board again. (There will still be only one card visible, because your new issue is for version 2.0 and by default the planning board shows unscheduled issues.)
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* GreenHopper
* Assigned to Me
* Projects

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!xxxx.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294733</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327443</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

a. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
b. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
c. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{c:\fisheye}}.
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). Restart FishEye to have it pick up the driver.

Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.

Then click 'Test Connection' to verify that FishEye can log in to the database.

If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.

Click 'Save & Migrate Data' to start the migration process.

{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

h3. Atlassian Test Subversion repository

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294732</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327449</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0.S1}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the cross at the top of the edit window to close the window. You will see your planning board again. (There will still be only one card visible, because your new issue is for version 2.0 and by default the planning board shows unscheduled issues.)
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* GreenHopper
* Assigned to Me
* Projects

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!xxxx.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294738</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917652</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To configure FishEye for JIRA integration, you must add a JIRA server in the admin interface and then edit the default JIRA server mappings.

h4. Add a JIRA Server to FishEye

# To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.
# To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens. A number of fields and options must be filled out or selected on this page. See below for detailed information on each field.
# Fill in the *Name* field with a descriptive name for the JIRA server. This setting is required. 
# Fill in the *URL* field with the Internet address of the JIRA server. This setting is required. 
# For the *Allow Unassigned* setting, select True or False. (this setting allows or disallows unassigned sub-tasks). This setting is not required. 
# Fill in the *Username* field with the username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). This setting is required. 
# Fill in the *Password* field with the password for the account on the JIRA instance. This setting is required. 
# For the *Include in Activity Streams* setting, check the box to allow JIRA information to appear on the Dashboard. This setting is not required. 
# For the *Authenticate as Trusted Application* setting,check the box to allow the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues]. This setting is not required. 

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'. Leave the View JIRA Servers page open for the next step.

h4. Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it.

To configure the FishEye Plugin in JIRA:

# Go to the '*JIRA Administration*' menu, then click '*FishEye Confguration*'. 
# In the '*Base URL*' field, enter the URL of your FishEye instance.
# Enter the username and password of a FishEye user?



(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852217</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327487</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294780</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917653</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852218</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701096</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png!
_Beware of low-flying worms. You are embarking on stage 3 of the_ _[Atlassian Dragon Quest|Here Be Dragons]__._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper {excerpt-include:_DragonsVersionNumber-GH|nopanel=true} for JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper {excerpt-include:_DragonsVersionNumber-GH|nopanel=true} for JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*License Details*' in the left-hand panel (in the 'GreenHopper' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

_{+}Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA{+}_
\\
\\  !GreenHopperPlanningBoardDefault.png|thumbnail!\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to add a JIRA issue, edit and move JIRA issues through the workflow stages via the GreenHopper Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper.

First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, then add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Add*' button above the version cards, near the top right of the planning board.
# The 'Add Version' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
#* Leave the default values for the other fields.
#* Click "Create and Close".
# Follow the above steps to add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the sprint box for sprint '*2.0.S1*'.
# Within the sprint box click the gear icon (top right) and select '*Toggle visibility*' or double click the sprint title bar to expand the box.
# The '*Parent*' is currently set to 'none'. Click '*Parent*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Parent*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. 
# You will see your planning board again. Click the version number dropdown (next to the dropdowns with 'Planning Board' and 'Version' selected) and select '*Unscheduled*', to see all the cards.
# Click the card for your existing issue {color:blue}{*}DRA-1{*}{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}{*}DRA-2{*}{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty, because it is currently showing cards for version 'Unscheduled'. Click the version number '*2.0.S1*' at the top of the version 2.0.S1 box on the right. You should now see your two cards '{color:blue}{*}DRA-1{*}{color}' and '{color:blue}{*}DRA-2{*}{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The value in the version number dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can double click the title bar of each version box, to minimise or expand the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Planning Board' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'To Do' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*Done*' column.
#* The '*Transitioning Issue*' screen will appear. Select '*Close Issue*' and leave all other values at their defaults. Click '*Update*'.
{panel}

_{+}Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0{+}_
\\
\\  !GreenHopperTaskBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Use the 'Scrum' Template for your Project and Add a Story

GreenHopper includes a 'Scrum' project template for projects using the 'Scrum' methodology. This template adds custom fields like ranking fields, story points, etc, to your project. It also allows you to create stories, epics and technical tasks. You will now apply this template to your project and create a story.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the '*Tools*' menu on the planning board and click '*Configuration*'.
# The project configuration page will appear. Click the '*General*' tab. 
# Select '*Scrum*' from the '*Project Template*' dropdown menu (in the 'Project Templates' section).
# Click '*Change template*' on the confirmation window. The 'Scrum' project template will be applied.
# Next, you will create a new story. Go back to your planning board and click '*New Card*'. Enter the following values:
#* Card type: {{Story}}
#* Priority: {{Major}}
#* Summary: {{As a Dragon Slayer, I would like to be able to wield an extremely big sword.}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Business Value: {{10}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
#* Story Points: {{10}}
# Click '*Create and Close*', to create the story. You will see your planning board again with your story displayed.
{panel}

_{+}Screenshot 3 (click to enlarge): The GreenHopper planning board with story{+}_
\\
\\  !GreenHopperPlanningBoardStory.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*GreenHopper Agile Gadget*' and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*GreenHopper Agile Gadget*':
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select Select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legend*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*GreenHopper Agile Gadget*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}{*}green{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 3 gadgets:
* The 'GreenHopper Agile Gadget' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget

_{+}Screenshot 4 (click to enlarge): JIRA dashboard with 3 gadgets{+}_
\\
\\  !JIRADashboard3Gadgets.png|thumbnail!\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}

h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install Confluence|Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668527</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327494</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294789</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">177209421</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">170688524</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[ellen@clifftop.us]]></property>
<property name="creationDate">2008-12-07 19:05:08.948</property>
<property name="lastModificationDate">2008-12-07 19:05:08.948</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701098</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}

h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone for Production Usage (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.7.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {nolink}[http://www.foobar.com:8090]{nolink}.
# Log in to Confluence with username {color:blue}{{{}{*}charlie{*}{}}}{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd\!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your JIRA server, one per line. You can find these values by checking the 'Remote Addresses' tab of the JIRA application you set up in Crowd previously, see [Step 4 of Dragons Stage 2 - Install JIRA|Dragons Stage 2 - Install JIRA#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the IP Addresses for your Confluence server, one per line. You can find these values by checking the 'Remote Addresses' tab of the Confluence application you set up in Crowd previously, see [Step 4. Hook Confluence up to Crowd|#crowd]. For example, {{172.20.5.95}} and {{127.0.0.1}}. 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{{{nolink}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{nolink}}}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{{{nolink}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{nolink}}}
# Click '*Add*'.
{panel}


_{+}Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA{+}_
\\
\\  !JIRATrustedApp.png|thumbnail!\\
\\
_{+}Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget{+}_
\\
\\  !ConfluenceExternalGadgets.png|thumbnail!\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space.
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Paste the following code for the macro over the '*xxx*' text. It will look something like this (substitute your server name in place of 'coopers'):
{code}{gadget:url=http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml|width=450}
projectOrFilterId=project-10000&statType=resolution&isConfigured=true&refresh=false
{gadget}
{code}
#* Click the '*Preview*' tab. The preview page will show the pie chart of JIRA issues from your JIRA Dragons project on your page. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}{{{}{*}DRA-1{*}{}}}{color}, {color:blue}{{{}{*}DRA-2{*}{}}}{color} and {color:blue}{{{}{*}DRA-3{*}{}}}{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{{{nolink}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{nolink}}}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

_{+}Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

_{+}Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668529</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917660</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852225</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701093</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}

h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}

h2. Step 2. Install JIRA

Requirements: *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 1 [above|#database].
#** *Schema* -- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}/bin/config.sh}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{/usr/local/jira-home/}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 1 [above|#database].
#** *Schema* -- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Application Title -- Accept the default application title.
#* Mode -- Accept the default mode.
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{[http://coopers:8080]}}. Or specify a website address, such as {{[http://www.foobar.com:8080]}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}{{{}{*}charlie{*}{}}}{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

_{+}Screenshot 2: The JIRA Dashboard when you first log in{+}_
\\
\\ !JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}

h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory\!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}

h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA|Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668524</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">99188757</id>
<property name="name"><![CDATA[builds]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2007-10-18 04:03:50.829</property>
<property name="lastModificationDate">2007-10-18 04:03:50.829</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701087</id>
<property name="body"><![CDATA[# Turn on the public API and allow unassigned issues:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668518</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701084</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.4/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the JIRA user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E jirauser
# Create the JIRA database:
/opt/PostgreSQL/8.4/bin/createdb -O jirauser jira
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668515</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917667</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}}or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852233</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506393</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473643</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917664</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the bas URL for your Confluence site (e.g. {{http://coopers:8080}}or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852230</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701079</id>
<property name="body"><![CDATA[{excerpt}4.2{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668510</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917666</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8080}}or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852232</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327475</id>
<property name="body"><![CDATA[{warning:title=Clover?}We need to decide whether Clover is part of the Dragon docs. Then we can decide whether to add the Clover gadget.{warning}

Congratulations! Stage 12 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard

h2. Step 2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Slay the Dragon

{color:red}*Add a game here*{color} 

h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294765</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917676</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Configure FishEye 

To configure FishEye for JIRA integration, you must add a JIRA server in the admin interface and then edit the default JIRA server mappings.

h4. Add a JIRA Server to FishEye

# To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.
# To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens. A number of fields and options must be filled out or selected on this page. See below for detailed information on each field.
# Fill in the *Name* field with a descriptive name for the JIRA server. This setting is required. 
# Fill in the *URL* field with the Internet address of the JIRA server. This setting is required. 
# For the *Allow Unassigned* setting, select True or False. (this setting allows or disallows unassigned sub-tasks). This setting is not required. 
# Fill in the *Username* field with the username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). This setting is required. 
# Fill in the *Password* field with the password for the account on the JIRA instance. This setting is required. 
# For the *Include in Activity Streams* setting, check the box to allow JIRA information to appear on the Dashboard. This setting is not required. 
# For the *Authenticate as Trusted Application* setting,check the box to allow the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues]. This setting is not required. 

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'. Leave the View JIRA Servers page open for the next step.

h4. Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it.

To configure the FishEye Plugin in JIRA:

# Go to the '*JIRA Administration*' menu, then click '*FishEye Confguration*'. 
# In the '*Base URL*' field, enter the URL of your FishEye instance.
# Enter the username and password of a FishEye user?



(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852242</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327480</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294771</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">235701072</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], where you're sure to meet other battle-weary dragon slayers.{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">235668503</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">180584449</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">22806536</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[mmetcalfe]]></property>
<property name="creationDate">2009-02-11 05:54:18.525</property>
<property name="lastModificationDate">2009-02-11 05:54:18.525</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327483</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

1. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
2. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
3. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{c:\fisheye}}.
# Launch FishEye from the command line, typing {{FISHEYE_INST/start.bat}}. A FishEye console window will appear, listing the startup progress. Give it a few minutes to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the FishEye admin password. 

{expand}

{expand: For Linux: (click to expand)}

# Download FishEye from the Atlassian [Download Center|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa]
# Unzip the downloaded package to the desired installation directory: {{/opt/fecru-x.x.x}}.
# Launch FishEye from the command line, typing {{./run.sh}} . Console output lines will appear, listing the startup progress. Give it a few moments to complete its process. When the message "server started" is displayed, you can continue. 
(i) You will also receive a warning in the console output about a 'missing license'. This is normal.
# On the same machine go to {{http://localhost:8060/}} (or type the hostname or IP address in place of {{localhost}} from another machine) in your web browser. You will be prompted to enter your FishEye license key and set the admin password.
{expand}

h2. Step 3. Connect FishEye to the PostgreSQL database

1. Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). 

2. Restart FishEye to have it pick up the driver.

3. Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password that you chose when setting up the PostgreSQL database.

4. Now click 'Test Connection' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present.

5. Click 'Save & Migrate Data' to start the migration process.

{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

h3. Atlassian Test Subversion repository

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294775</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327404</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

xxxxxxxxx

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

h2. Connect FishEye to the PostgreSQL database. 

h2. Connect FishEye to a Subversion repository. 

h3. Local Subversion repository.

h3. Atlassian Test Subversion repository:

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294692</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327405</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

a. Create a new database user (replacing 'username' and 'password' with the appropriate values):

{noformat}$ psql
> create user username password 'password';
{noformat}
b. Create a UTF-8 database and make the newly created user the owner:

{noformat}> create database fisheye ENCODING 'UTF-8' OWNER username;
{noformat}
c. Make sure the user has full access to the database:

{noformat}> grant all on database fisheye to username;{noformat}

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

h2. Step 3. Connect FishEye to the PostgreSQL database

Download the PostgreSQL JDBC driver jar file from the [PostgreSQL website|http://jdbc.postgresql.org/] and copy the jar to your FISHEYE_INST/lib directory (create the lib/ directory if it doesn't already exist). Restart FishEye or Crucible to have it pick up the driver.

Now, with the database and driver file prepared, navigate to the 'Database Configuration' section in the FishEye admin interface, select PostgreSQL from the drop down and fill in the details for database URL, username and password.

Then click 'Test Connection' to verify that Crucible or FishEye can log in to the database.

If this fails, verify that you have the PostgreSQL JDBC driver .jar file in the classpath (by placing the .jar file in FISHEYE_INST/lib). Also, ensure that the database user can log in to the database from the machine that Crucible or FishEye is running on and that all the required privileges are present.

Click 'Save & Migrate Data' to start the migration process.

{color:#000000}During the migration process (which will take several minutes, depending on the size of your database and network throughput), the product will be inaccessible to users and external API clients. Users will see a maintenance screen that informs them of the process. Should the migration fail for any reason, FishEye will not switch to the new database and report on the encountered problems. Because the destination database may now contain some, but not yet all data, drop all tables, indexes and constraints before attempting a new migration.{color}

h2. Step 4. Connect FishEye to Subversion 

h3. Local Subversion repository

h3. Atlassian Test Subversion repository

{color:red}(Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 5. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 6. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294693</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506242</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473475</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">246513832</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new data directory's location, such as {{C:\data\fisheyecrucible}}.)
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new data directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new data directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. 
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new data directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Crucible

In this step you will do the initial setup of your FishEye/Crucible site. As part of this process, you will connect FishEye and Crucible to JIRA, so that you can manage all your users via JIRA and share information between JIRA and FishEye/Crucible.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/fisheye}}. Alternatively, type the host name or IP address instead of {{localhost}}. 
# The FishEye/Crucible setup wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you do not have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. If prompted, ensure that you choose to *include Crucible as part of this evaluation*.
# The '*Connect to JIRA'* step will appear. Enter the following information:
#* JIRA Base URL -- Enter the web address of your JIRA server, e.g. {{http://www.foobar.com:8080}}.
#* Admin Username: {{charlie}}. 
This is {color:blue}*Charlie's*{color} username in JIRA.
#* Admin Password -- Enter Charlie's password for JIRA.
# Leave the other fields (the 'advanced options') at their default values and click the '*Connect to JIRA*' button.
# The 'Set administrator password' screen will appear. Enter an administration password and then enter it again to confirm it.
This is the password you can use to access your FishEye/Crucible administration screens. Charlie will also have permission to access the administration screens.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
You can use the administration password that you defined in the previous step, or you can use {color:blue}*Charlie's*{color} login. We recommend that you log in as Charlie:
## Click '*Log In*' in the top menu bar.
## Enter the username '{{charlie}}' and Charlie's password in JIRA.
## Click the dropdown arrow on the right of Charlie's name in the top menu bar, and select '*Administration*'.
# Now you will connect FishEye/Crucible to your database. In the left-hand 'Admin' menu, click '*Database*' under 'Systems Settings'.
# Click '*Edit*' and enter the following details:
#* Type -- Select '*PostgreSQL*'.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}} -- Note that this value is different from the default value.
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- Enter the password you defined in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. 
If the test fails:
#* Verify that you have the PostgreSQL JDBC driver JAR file in the FishEye data directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. 
#* Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. 
#* Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. Wait a while and try again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Configuring FishEye].

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:bitbucket}
h2. Step 5. Connect FishEye to Bitbucket

For this integration exercise we provide a Bitbucket repository that you can connect to your FishEye 'Dragons' repository. Bitbucket is a code hosting site for the [Mercurial|http://mercurial.selenic.com/] distributed version control system (DVCS). We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Mercurial|http://mercurial.selenic.com/], [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. 

For this integration exercise, follow the steps below to install Mercurial and then connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Get [Mercurial|http://mercurial.selenic.com/] and [Python|http://www.python.org/]. Make sure that you get *Mercurial 1.5 or later*. 
#* If you are on Windows you can download and install [TortoiseHg|http://tortoisehg.bitbucket.org/]. This bundles Python and Mercurial.)
#* Note: For some UNIX distributions, the default download will include Mercurial 1.4.3. You will need 1.5 or later.
# Add or edit your Mercurial config file at {{C:\Documents and Settings\MY_NAME\mercurial.ini}} (Windows XP) or  {{C:\MY_NAME\mercurial.ini}} (Windows 7) or {{~/.hgrc}} (UNIX). The file should contain your preferred editor and your username. If you do not already have a username, you can use {{atlassian_dragons}}:
{noformat}
[ui]
; editor used to enter commit logs, etc.  Most text editors will work.
editor = notepad
username = atlassian_dragons
{noformat}
# Go to your FishEye administration screen in your browser.
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add*' button. The first screen of the 'New Repository' wizard will appear. 
# Enter the following information:
#* Repository Type: {{Mercurial}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* Repository Location: {{https://bitbucket.org/atlassian_dragons/dragonslayers}}.
#* Authentication Style: {{No authentication}}.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Bitbucket is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Mercurial]. You can learn about Bitbucket and Mercurial in the [Bitbucket documentation|BITBUCKET:Bitbucket 101].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the 'Source' view. Click '*Tools*' then '*RSS Feed*'. You can get an RSS feed on the dashboard too.

(/) Click the changeset number ({{0:922fd9308885}}) in the activity stream to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Ready to be blown away by FishEye and JIRA. Completed stage 4 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Get JIRA and FishEye Talking|Dragons Stage 5 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">246481100</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425065</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392369</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506246</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Crowd database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
{panel} 

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473479</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">246513836</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the_ _[Atlassian Dragon Quest|Here Be Dragons]__._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}

h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL{+}_
\\
\\ !PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}
{anchor:install}

h2. Step 2. Install FishEye and Crucible

Requirements: \*FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}\*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}\*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}.
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new data directory's location, such as {{C:\data\fisheyecrucible}}.)
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new data directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready:
\\
'*INFO  - Server started on :8060 (http) (control port on* *{_}your-server-IP-address{_}{*}*:8059)*'.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}\*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}.
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new data directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory.
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new data directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready:
\\
'*INFO  - Server started on :8060 (http) (control port on* *{_}your-server-IP-address{_}{*}*:8059)*'.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}
{anchor:setup}

h2. Step 3. Set Up FishEye and Crucible

In this step you will do the initial setup of your FishEye/Crucible site. As part of this process, you will connect FishEye and Crucible to JIRA, so that you can manage all your users via JIRA and share information between JIRA and FishEye/Crucible.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{[http://localhost:8060/fisheye]}}. Alternatively, type the host name or IP address instead of {{localhost}}.
# The FishEye/Crucible setup wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field.
#* If you do not have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. If prompted, ensure that you choose to *include Crucible as part of this evaluation*.
# The '*Connect to JIRA'* step will appear. Enter the following information:
#* JIRA Base URL -- Enter the web address of your JIRA server, e.g. {{[http://www.foobar.com:8080]}}.
#* Admin Username: {{charlie}}.
This is {color:blue}{*}Charlie's{*}{color} username in JIRA.
#* Admin Password -- Enter Charlie's password for JIRA.
# Leave the other fields (the 'advanced options') at their default values and click the '*Connect to JIRA*' button.
# The 'Set administrator password' screen will appear. Enter an administration password and then enter it again to confirm it.
This is the password you can use to access your FishEye/Crucible administration screens. Charlie will also have permission to access the administration screens.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
You can use the administration password that you defined in the previous step, or you can use {color:blue}{*}Charlie's{*}{color} login. We recommend that you log in as Charlie:
## Click '*Log In*' in the top menu bar.
## Enter the username '{{charlie}}' and Charlie's password in JIRA.
## Click the dropdown arrow on the right of Charlie's name in the top menu bar, and select '*Administration*'.
# Now you will connect FishEye/Crucible to your database. In the left-hand 'Admin' menu, click '*Database*' under 'Systems Settings'.
# Click '*Edit*' and enter the following details:
#* Type -- Select '*PostgreSQL*'.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}} -- Note that this value is different from the default value.
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- Enter the password you defined in step 1 ([above|#database]).
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database.
If the test fails:
#* Verify that you have the PostgreSQL JDBC driver JAR file in the FishEye data directory (see step 2 [above|#install]). Note that this is _not_ your installation directory.
#* Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present.
#* Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. Wait a while and try again.
# Click '*Save & Migrate*'.
{panel}

_{+}Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful{+}_
\\
\\ !FishEyeDatabaseSetup-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Configuring FishEye].

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:bitbucket}

h2. Step 5. Connect FishEye to Bitbucket

For this integration exercise we provide a Bitbucket repository that you can connect to your FishEye 'Dragons' repository. Bitbucket is a code hosting site for the [Mercurial|http://mercurial.selenic.com/] distributed version control system (DVCS). We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Mercurial|http://mercurial.selenic.com/], [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository].

For this integration exercise, follow the steps below to install Mercurial and then connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Get [Mercurial|http://mercurial.selenic.com/] and [Python|http://www.python.org/]. Make sure that you get a version of&nbsp;*Mercurial between 1.5 and 1.8.x.* FishEye is not yet compatible with Mercurial 1.9.
#* If you are on Windows you can download and install [TortoiseHg|http://tortoisehg.bitbucket.org/]. This bundles Python and Mercurial.)
#* Note: For some UNIX distributions, the default download will include Mercurial 1.4.3. You will need 1.5 or later.
# Add or edit your Mercurial config file at {{C:\Documents and Settings\MY_NAME\mercurial.ini}} (Windows XP) or {{C:\MY_NAME\mercurial.ini}} (Windows 7) or {{\~/.hgrc}} (UNIX). The file should contain your preferred editor and your username. If you do not already have a username, you can use {{atlassian_dragons}}:
{noformat}
[ui]
; editor used to enter commit logs, etc.  Most text editors will work.
editor = notepad
username = atlassian_dragons
{noformat}
# Go to your FishEye administration screen in your browser.
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add*' button. The first screen of the 'New Repository' wizard will appear.
# Enter the following information:
#* Repository Type: {{Mercurial}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* Repository Location: {{[https://bitbucket.org/atlassian_dragons/dragonslayers]}}.
#* Authentication Style: {{No authentication}}.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Bitbucket is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample repository, this should only take a few minutes.
{panel}

_{+}Screenshot 3 (click to enlarge): FishEye dashboard with activity stream{+}_
\\
\\  !FishEyeDashboard-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Mercurial]. You can learn about Bitbucket and Mercurial in the [Bitbucket documentation|BITBUCKET:Bitbucket 101].

{include:_Dragons Problem or Victory|nopanel=true}
h2. Victory\!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}{{{}{*}Dragons{*}{}}}{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the 'Source' view. Click '*Tools*' then '*RSS Feed*'. You can get an RSS feed on the dashboard too.

(/) Click the changeset number ({{0:922fd9308885}}) in the activity stream to see FishEye's view of your source code.

_{+}Screenshot 4 (click to enlarge): FishEye source repository viewer{+}_
\\
\\  !FishEyeSourceView-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Ready to be blown away by FishEye and JIRA. Completed stage 4 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Get JIRA and FishEye Talking|Dragons Stage 5 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">246481104</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506248</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473481</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506249</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some optional JIRA features, as required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Click '*Update*'.
# Enable sub-tasks:
#* Click '*Sub-Tasks*' in the left-hand panel (in the 'Global Settings' section).
#* The 'Sub-Tasks' screen will appear. Click '*Enable*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}.
#* Name: {{jira}}.
#* Description: {{Atlassian JIRA}}.
#* Password -- Enter the password that JIRA will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'JiraOsUserAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473482</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506250</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473483</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425059</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392362</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327391</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

xxxxxxxxx

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

xxxxxxxxx

{color:red}(Where's their repository? Current thinking is to assume they have their own SVN repo. Link to FE and Bamboo instructions for other repos. Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294679</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506252</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Crowd database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
{panel} 

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}
#* Name: {{bamboo}}
#* Description: {{Atlassian Bamboo}}
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473485</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506254</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Crowd database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
{panel} 

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}
#* Name: {{bamboo}}
#* Description: {{Atlassian Bamboo}}
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473487</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425055</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392358</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327387</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294675</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425053</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392356</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327383</id>
<property name="body"><![CDATA[{warning:title=Clover?}We need to decide whether Clover is part of the Dragon docs. Then we can decide whether to add the Clover gadget.{warning}

Congratulations! Stage 12 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy! 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard

h2. Step 2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Slay the Dragon

{color:red}*Add a game here*{color} 

h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294671</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327386</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294674</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425048</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392351</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327380</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. Take heart, noble dragon slayer, and proceed with a will.

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

xxxxxxxxxxxx

h2. Step 2. Install Bamboo

# Install Bamboo

{anchor:setup}
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 10 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294668</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327375</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons. Take heart, be strong and you will prevail. 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

xxxxxxxxx

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

xxxxxxxxx

{color:red}(Where's their repository? Current thinking is to assume they have their own SVN repo. Link to FE and Bamboo instructions for other repos. Will put requirement for SVN repo onto front Dragons page.){color}

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294663</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327376</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go. 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Configure the FishEye Plugin in JIRA

# Configure the FishEye plugin in JIRA (it's bundled, just needs configuration) .............


(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294664</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207522594</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Adding Users

{color:red}TBD: Must test this procedure.{color}

During the initial setup, you added just one user: {color:blue}*charlie*{color}. Very soon you will want to add more users, and in particular users who are not administrators.

We recommend that you use Crowd for all user and group management. Here is a suggested plan of action:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{info:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{info}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] measures how much of your code is covered by automated tests (called '[code coverage|CLOVER:About Code Coverage]') and shows you a graphical display of this information. It also offers [test optimization|CLOVER:About Test Optimization], allowing your builds to run a lot faster.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.{color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207489998</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327428</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. You will:
* Create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks.
* Create a new issue and include it in one of the sprints.
* Add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0.S1}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the cross at the top of the edit window to close the window. You will see your planning board again. (There will still be only one card visible, because your new issue is for version 2.0 and by default the planning board shows unscheduled issues.)
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
{panel}

+_Screenshot 2 (click to enlarge): xxxxxxxxxxxxxxxxxxxxxxxxxx_+
\\
\\
!xxxx.png|thumbnail!
\\
\\
There's more about xxxxxxxxxxxxxxxx [GreenHopper documentation|GH:xxxxxxxxxxxxxxxxx].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the 'Agile' gadget to point to your 'Dragons' project: {color:red}*TBC*{color}
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Click '*Save*'. 
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* GreenHopper
* Assigned to Me
* Projects

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!xxxx.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294717</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327416</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now you can choose to add a JIRA issue via GreenHopper or via the standard JIRA interface. For this exercise, you will do it via GreenHopper. Then you will create a 'sprint' and add your two issues to the sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the 'Edit' icon on your '{color:blue}*DRA-1*{color}' card and change the following values:
#* Affects Version: {{1.0}}
#* Fix Version: {{2.0}}
# Close the edit window, so that you see your planning board again. There will now be no cards visible, because by default the planning board shows unscheduled issues.
# Select version '*2.0*' in the dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
{panel}

{color:red}*TBC:*
# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
(/) see the burndown chart
{color}

+_Screenshot 2 (click to enlarge): xxxxxxxxxxxxxxxxxxxxxxxxxx_+
\\
\\
!xxxx.png|thumbnail!
\\
\\
There's more about xxxxxxxxxxxxxxxx [GreenHopper documentation|GH:xxxxxxxxxxxxxxxxx].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'green' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*GreenHopper*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the 'GreenHopper' gadget to point to your 'Dragons' project:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Click '*Save*'. 
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* GreenHopper
* Assigned to Me
* Projects

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!xxxx.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294704</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">246513840</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new data directory's location, such as {{C:\data\fisheyecrucible}}.)
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new data directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new data directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. 
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new data directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Crucible

In this step you will do the initial setup of your FishEye/Crucible site. As part of this process, you will connect FishEye and Crucible to JIRA, so that you can manage all your users via JIRA and share information between JIRA and FishEye/Crucible.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/fisheye}}. Alternatively, type the host name or IP address instead of {{localhost}}. 
# The FishEye/Crucible setup wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you do not have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. If prompted, ensure that you choose to *include Crucible as part of this evaluation*.
# The '*Connect to JIRA'* step will appear. Enter the following information:
#* JIRA Base URL -- Enter the web address of your JIRA server, e.g. {{http://www.foobar.com:8080}}.
#* Admin Username: {{charlie}}. 
This is {color:blue}*Charlie's*{color} username in JIRA.
#* Admin Password -- Enter Charlie's password for JIRA.
# Leave the other fields (the 'advanced options') at their default values and click the '*Connect to JIRA*' button.
# The 'Set administrator password' screen will appear. Enter an administration password and then enter it again to confirm it.
This is the password you can use to access your FishEye/Crucible administration screens. Charlie will also have permission to access the administration screens.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
You can use the administration password that you defined in the previous step, or you can use {color:blue}*Charlie's*{color} login. We recommend that you log in as Charlie:
## Click '*Log In*' in the top menu bar.
## Enter the username '{{charlie}}' and Charlie's password in JIRA.
## Click the dropdown arrow on the right of Charlie's name in the top menu bar, and select '*Administration*'.
# Now you will connect FishEye/Crucible to your database. In the left-hand 'Admin' menu, click '*Database*' under 'Systems Settings'.
# Click '*Edit*' and enter the following details:
#* Type -- Select '*PostgreSQL*'.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}} -- Note that this value is different from the default value.
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- Enter the password you defined in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. 
If the test fails:
#* Verify that you have the PostgreSQL JDBC driver JAR file in the FishEye data directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. 
#* Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. 
#* Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. Wait a while and try again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Configuring FishEye].

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:bitbucket}
h2. Step 5. Connect FishEye to Bitbucket

For this integration exercise we provide a Bitbucket repository that you can connect to your FishEye 'Dragons' repository. Bitbucket is a code hosting site for the [Mercurial|http://mercurial.selenic.com/] distributed version control system (DVCS). We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Mercurial|http://mercurial.selenic.com/], [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. 

For this integration exercise, follow the steps below to install Mercurial and then connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Get [Mercurial|http://mercurial.selenic.com/] and [Python|http://www.python.org/]. Make sure that you get *Mercurial 1.5 or later*. 
#* If you are on Windows you can download and install [TortoiseHg|http://tortoisehg.bitbucket.org/]. This bundles Python and Mercurial.)
#* Note: For some UNIX distributions, the default download will include Mercurial 1.4.3. You will need 1.5 or later.
# Add or edit your Mercurial config file at {{C:\Documents and Settings\MY_NAME\mercurial.ini}} (Windows XP) or  {{C:\MY_NAME\mercurial.ini}} (Windows 7) or {{~/.hgrc}} (UNIX). The file should contain your preferred editor and your username. If you do not already have a username, you can use {{atlassian_dragons}}:
{noformat}
[ui]
; editor used to enter commit logs, etc.  Most text editors will work.
editor = notepad
username = atlassian_dragons
{noformat}
# Go to your FishEye administration screen in your browser.
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add*' button. The first screen of the 'New Repository' wizard will appear. 
# Enter the following information:
#* Repository Type: {{Mercurial}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* Repository Location: {{https://bitbucket.org/atlassian_dragons/dragonslayers}}.
#* Authentication Style: {{No authentication}}.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Bitbucket is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Mercurial]. You can learn about Bitbucket and Mercurial in the [Bitbucket documentation|BITBUCKET:Bitbucket 101].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the 'Source' view. Click '*Tools*' then '*RSS Feed*'. You can get an RSS feed on the dashboard too.

(/) Click the changeset number ({{0:922fd9308885}}) in the activity stream to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Ready to be blown away by FishEye and JIRA. Completed stage 4 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Get JIRA and FishEye Talking|Dragons Stage 5 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">246481107</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674807</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Configure FishEye Plugin into JIRA

# *FishEye plugin* \- configure the FishEye plugin in JIRA (it's bundled, just needs configuration)


(/) *Victory:*
* You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
## 'Recent Commits' gadget
## 'Charts' gadget


(/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 8 - Configure Crucible]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707844</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">172097551</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[asaintprix@atlassian.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-11-19 13:50:44.360</property>
<property name="lastModificationDate">2008-11-19 13:50:44.360</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674812</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure the base URL.
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build

(/) *Victory:*
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)


{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest. I own Bamboo! @AtlassianDragons].{tip} 

[Dragons Stage 10 - Install Clover]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707849</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674800</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.
# Admin setup:
## Configure the base URL.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}



h2. Try it Out

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
# configure Confluence to have a base URL

*Victory*...




{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 5 - Install AppLinks]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707837</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674804</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# Configure FishEye to use Crowd
# Set up FishEye's JIRA integration -- set up your JIRA servers.
# FishEye Admin Setup:
## Configure FishEye to have a base URL
## Enable the public API


(/) *Victory*
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)
* 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 7 - Get JIRA and FishEye Talking]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707841</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424989</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392290</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424990</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392291</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424987</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392288</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424988</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392289</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674818</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Add a Bamboo Gadget to JIRA
# Add the 'Bamboo Status' gadget to your dashboard

h2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

(/) *The battle is won, the dragon is slain:*
* In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)


{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons].{tip} 

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707855</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">190119954</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[rjansen]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2009-05-14 04:17:29.196</property>
<property name="lastModificationDate">2009-05-14 04:17:29.196</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424981</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [below|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge{color} image that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor panel of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392282</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917788</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. (The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.)

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852355</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917787</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. (The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.)

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852354</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327368</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Ready, steady, tweet?}Please read the introduction [below|#introduction].
If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

Why would we ask you to undertake this quest?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can make the process better.
* We hope you'll have some *fun* along the way.
* It's another excuse to give away some *T-shirts*.

Setting up an integrated suite of Atlassian applications will give you awesome results. But we know that the setup process can be long and difficult. We want to improve the process and we'd like your feedback to help us do that.

We have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a T-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.  

h6. Getting Help

If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* Please check your *unzip program* before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* {color:red}Must have your own source repository. We assume SVN.{color}


[Read, steady, go|#go].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294656</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674777</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure the base URL.
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build

(/) *Victory:*
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)


{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 11 - Get JIRA and Bamboo Talking]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707814</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327373</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = /var/confluence-home}}
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# To ensure that Confluence can communicate with the PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter or modify the content of these fields with the following information:
#** Database URL -- {{jdbc:postgresql//localhost:5432/confluence}}
#** Username -- {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- {{AtlassianDragons}} -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# Load the demonstration space content into your Confluence installation:
#* On the 'Load Content' screen, click the '*Example Site*' button.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username -- {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name -- {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click the 'Start using Confluence now' link.
# The 'Confluence Demonstration Space' Home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address, such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{CONFLUENCE}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter the password that Confluence will use to access Crowd (e.g. {{Dragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to 'External user management'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Create a Wiki space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages that in its own right, behaves like its own wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name -- {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key -- {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Again, leave the default settings as they are (that is, '*Default Theme*').
#* Click the '*OK*' button.
# The 'Home' page of your new 'Dragons' space will be shown.
{panel}

h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294661</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327372</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now you can choose to add a JIRA issue via GreenHopper or via the standard JIRA interface. For this exercise, you will do it via GreenHopper. Then you will create a 'sprint' and add your two issues to the sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the 'Edit' icon on your '{color:blue}*DRA-1*{color}' card and change the following values:
#* Affects Version: {{1.0}}
#* Fix Version: {{2.0}}
# Close the edit window, so that you see your planning board again. There will now be no cards visible, because by default the planning board shows unscheduled issues.
# Select version '*2.0*' in the dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
{panel}

{color:red}*TBC:*
# *Create a sprint* \- and 
# drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
(/) see the burndown chart
{color}

+_Screenshot 2 (click to enlarge): xxxxxxxxxxxxxxxxxxxxxxxxxx_+
\\
\\
!xxxx.png|thumbnail!
\\
\\
There's more about xxxxxxxxxxxxxxxx [GreenHopper documentation|GH:xxxxxxxxxxxxxxxxx].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'green' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*GreenHopper*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the 'GreenHopper' gadget to point to your 'Dragons' project:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Click '*Save*'. 
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* GreenHopper
* Assigned to Me
* Projects

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!xxxx.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294660</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917786</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Follow these steps to configure the plugin for your installation.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The 'Associate FishEye Repositories with JIRA Projects' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under 'Mapped Project Keys'.
# Click '*Update*'.
{panel}


+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!

As shown in the above screenshot, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. (The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.) 

+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!

As shown in the above screenshot, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852353</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506272</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Crowd database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
{panel} 

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}
#* Name: {{bamboo}}
#* Description: {{Atlassian Bamboo}}
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473505</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201327371</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201294659</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674767</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Ready, steady, tweet?}Please read the introduction [below|#introduction].
If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest!] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

Why would we ask you to undertake this quest?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can make the process better.
* We hope you'll have some *fun* along the way.
* It's another excuse to give away some *T-shirts*.

Setting up an integrated suite of Atlassian applications will give you awesome results. But we know that the setup process can be long and difficult. We want to improve the process and we'd like your feedback to help us do that.

We have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a T-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.  

h6. Getting Help

If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

[Read, steady, go|#go].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707804</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674768</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 3 - Install GreenHopper into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707805</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674769</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 4 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707806</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674770</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.
# Admin setup:
## Configure the base URL.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}



h2. Try it Out

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
# configure Confluence to have a base URL

*Victory*...




{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 5 - Install AppLinks]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707807</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506282</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
{panel} 

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}
#* Name: {{bamboo}}
#* Description: {{Atlassian Bamboo}}
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473516</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674772</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# Configure FishEye to use Crowd
# Set up FishEye's JIRA integration -- set up your JIRA servers.
# FishEye Admin Setup:
## Configure FishEye to have a base URL
## Enable the public API


(/) *Victory*
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)
* 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 7 - Show FishEye Source Views in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707809</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674774</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Configure FishEye Plugin into JIRA

# *FishEye plugin* \- configure the FishEye plugin in JIRA (it's bundled, just needs configuration)


(/) *Victory:*
* You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
## 'Recent Commits' gadget
## 'Charts' gadget


(/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 9 - Install Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707811</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425015</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392318</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674794</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 3 - Install GreenHopper into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707831</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674798</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 4 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707835</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674797</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 4 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707834</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674784</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# Configure FishEye to use Crowd
# Set up FishEye's JIRA integration -- set up your JIRA servers.
# FishEye Admin Setup:
## Configure FishEye to have a base URL
## Enable the public API


(/) *Victory*
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)
* 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 7 - Show FishEye Source Views in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707821</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674783</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Add a Bamboo Gadget to JIRA
# Add the 'Bamboo Status' gadget to your dashboard

h2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

(/) *The battle is won, the dragon is slain:*
* In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)


{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my t-shirt?].{tip} 

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you a [dragonslayer t-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707820</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">179634488</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[tradigewski]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2009-02-07 01:52:20.237</property>
<property name="lastModificationDate">2009-02-07 01:52:20.237</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674785</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Configure FishEye Plugin into JIRA

# *FishEye plugin* \- configure the FishEye plugin in JIRA (it's bundled, just needs configuration)


(/) *Victory:*
* You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
## 'Recent Commits' gadget
## 'Charts' gadget


(/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 8 - Configure Crucible]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707822</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425010</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392313</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506265</id>
<property name="body"><![CDATA[Congratulations! Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473498</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425013</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for fearless dragon slayers who already have JIRA installed.

\\
\\
(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392316</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424945</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t+dragon+slayers+one+and+all!+I've+completed+stage+1+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392245</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674210</id>
<property name="body"><![CDATA[Beware, all ye who enter, for here there be dragons! This is the starting point for your dragon quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA] for xxxxxx
* [GreenHopper] for xxxxxx
* [Confluence], the enterprise wiki
* [FishEye] for xxxxxxx
* [Bamboo] for xxxxxxx
* [Crowd] for xxxxxxx

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h2. Rushing into the Dragon's Lair

Start at stage 1. Meet the dragon if you dare!
{children}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707192</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917477</id>
<property name="body"><![CDATA[{warning:title=Clover?}We need to decide whether Clover is part of the Dragon docs. Then we can decide whether to add the Clover gadget.{warning}

Congratulations! Stage 12 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard

h2. Step 2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852019</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994930</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962211</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674208</id>
<property name="body"><![CDATA[Beware, all ye who enter, for here there be dragons! This is the starting point for your dragon quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian t-shirt] too.  

h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA] for xxxxxx
* [GreenHopper] for xxxxxx
* [Confluence], the enterprise wiki
* [FishEye] for xxxxxxx
* [Bamboo] for xxxxxxx
* [Crowd] for xxxxxxx

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h2. Rushing into the Dragon's Lair

Start at stage 1. Meet the dragon if you dare!
{children}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707189</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994932</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# The '*Clover License*' is optional:
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208962214</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506583</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter the location of your source project in your repository, e.g. {{[svn://svn.foo.com/project/trunk]}}. {color:red}*Confirm*{color}
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {color:red}*xxxxxxxxxx*{color}
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
Full details are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

In Bamboo
* Add {color:blue}{*}DRA-1{*}{color} to the build you just ran\! Or put the issue key in the commit rather than manually adding it, and see the flow through. (Edwin to demo.)
* View the JIRA issues for a [build result|BAMBOO:Viewing the JIRA Issues for a Build Result].

In JIRA:
* View the Bamboo builds that relate to a [particular JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue].
* View the Bamboo builds that relate to a [JIRA project|JIRA:Browsing a Project's Bamboo Builds]
* or [version|JIRA:Browsing a Version's Bamboo Builds].


{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473838</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506586</id>
<property name="body"><![CDATA[Congratulations! Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard


* Add gadgets to [display the status of your builds|JIRA:Adding the Bamboo Status Gadget] 
* and a [graphical summary of each build plan|JIRA:Adding the Bamboo Plan Summary Gadget].

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473841</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674212</id>
<property name="body"><![CDATA[Beware, all ye who enter, for here there be dragons! This is the starting point for your dragon quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA] for xxxxxx
* [GreenHopper] for xxxxxx
* [Confluence], the enterprise wiki
* [FishEye] for xxxxxxx
* [Bamboo] for xxxxxxx
* [Crowd] for xxxxxxx

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h2. Rushing into the Dragon's Lair

Start at stage 1. Meet the dragon if you dare!
{children}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707194</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917471</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Bamboo 2.4.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}Bamboo\webapp\WEB-INF\classes\bamboo-init.properties}}. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.{color}
#* Add a line specifying the {{bamboo.home}} property, with an absolute path to your Bamboo home directory. For example:
{{bamboo.home=c:/bamboo/data}} {color:red}*Confirm that you have to add the line, and update Bamboo docs if necessary too.{color}
(Note the forward slashes.)
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.*{color}
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}\BambooConsole.bat}}.
{panel}
{expand}

{color:red}*UNIX instructions not done yet*.{color}
{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 10 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852013</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674218</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 4 - Install AppLinks into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707200</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674216</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

h2. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 3 - Install GreenHopper into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707198</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674221</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

h2. Install FishEye Plugin into JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 7 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707203</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917480</id>
<property name="body"><![CDATA[Congratulations! Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852022</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506578</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter {color:blue}*Charlie's*{color} password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# In Bamboo, xxxxxxxxxxxxxxx
# {color:red}*TBC -- got to this point.*{color}















{panel}

Full details are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

In Bamboo
* Add {color:blue}{*}DRA-1{*}{color} to the build you just ran\! Or put the issue key in the commit rather than manually adding it, and see the flow through. (Edwin to demo.)
* View the JIRA issues for a [build result|BAMBOO:Viewing the JIRA Issues for a Build Result].

In JIRA:
* View the Bamboo builds that relate to a [particular JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue].
* View the Bamboo builds that relate to a [JIRA project|JIRA:Browsing a Project's Bamboo Builds]
* or [version|JIRA:Browsing a Version's Bamboo Builds].


{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473833</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674220</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

h2. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 6 - Show FishEye Source Views in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707202</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917461</id>
<property name="body"><![CDATA[You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Bamboo 2.4.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}Bamboo\webapp\WEB-INF\classes\bamboo-init.properties}}. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.{color}
#* Add a line specifying the {{bamboo.home}} property, with an absolute path to your Bamboo home directory. For example:
{{bamboo.home=c:/bamboo/data}} {color:red}*Confirm that you have to add the line, and update Bamboo docs if necessary too.{color}
(Note the forward slashes.)
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.*{color}
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}\BambooConsole.bat}}.
{panel}
{expand}

{color:red}*UNIX instructions not done yet*.{color}
{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 8 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 9 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852003</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917459</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the bas URL for your Confluence site (e.g. {{http://coopers:8080}}or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852001</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506600</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://www.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.

(/) _Hint_: Commit a changeset to your repository and put '*DRA-2*' into the commit comment. You will see the changeset appear in the 'Source' tab on your 'DRA-2' issue.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473856</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506601</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter the location of your source project in your repository, e.g. {{[svn://svn.foo.com/project/trunk]}}. {color:red}*Confirm*{color}
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {color:red}*xxxxxxxxxx*{color}
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can link from Bamboo straight through to FishEye.
{color:red}*TBC and screenshot*{color}

(/) Bamboo dash with JIRA links?
{color:red}*TBC and screenshot*{color}

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\


* View the JIRA issues for a [build result|BAMBOO:Viewing the JIRA Issues for a Build Result].

In JIRA:
* View the Bamboo builds that relate to a [particular JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue].
* View the Bamboo builds that relate to a [JIRA project|JIRA:Browsing a Project's Bamboo Builds]
* or [version|JIRA:Browsing a Version's Bamboo Builds].


{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473857</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917456</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851998</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917469</id>
<property name="body"><![CDATA[You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Bamboo 2.4.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}Bamboo\webapp\WEB-INF\classes\bamboo-init.properties}}. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.{color}
#* Add a line specifying the {{bamboo.home}} property, with an absolute path to your Bamboo home directory. For example:
{{bamboo.home=c:/bamboo/data}} {color:red}*Confirm that you have to add the line, and update Bamboo docs if necessary too.{color}
(Note the forward slashes.)
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory. {color:red}*Confirm location and caps, and update Bamboo docs if necessary too. Also, Bamboo docs have slashes the wrong way round.*{color}
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}\BambooConsole.bat}}.
{panel}
{expand}

{color:red}*UNIX instructions not done yet*.{color}
{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

# Setup Wizard
# Configure the base URL.

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

# Configure Bamboo to use Crowd ...

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

# Create a project and run a sample build ......

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 8 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 9 - Install Clover].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852011</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424970</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392271</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506598</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473854</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917467</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To configure FishEye for JIRA integration, you must add a JIRA server in the admin interface and then edit the default JIRA server mappings.

h4. Add a JIRA Server to FishEye

# To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.
# To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens. A number of fields and options must be filled out or selected on this page. See below for detailed information on each field.
# Fill in the *Name* field with a descriptive name for the JIRA server. This setting is required. 
# Fill in the *URL* field with the Internet address of the JIRA server. This setting is required. 
# For the *Allow Unassigned* setting, select True or False. (this setting allows or disallows unassigned sub-tasks). This setting is not required. 
# Fill in the *Username* field with the username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). This setting is required. 
# Fill in the *Password* field with the password for the account on the JIRA instance. This setting is required. 
# For the *Include in Activity Streams* setting, check the box to allow JIRA information to appear on the Dashboard. This setting is not required. 
# For the *Authenticate as Trusted Application* setting,check the box to allow the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues]. This setting is not required. 

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'. Leave the View JIRA Servers page open for the next step.

h4. Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it.

To configure the FishEye Plugin in JIRA:

# Go to the '*JIRA Administration*' menu, then click '*FishEye Confguration*'. 
# In the '*Base URL*' field, enter the URL of your FishEye instance.
# Enter the username and password of a FishEye user?



(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852009</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424973</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [below|#charlie] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge{color} image that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor panel of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392274</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674206</id>
<property name="body"><![CDATA[Beware, all ye who enter, for here there be dragons! This is the starting point for your dragon quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian t-shirt] too.  

h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating [JIRA], [GreenHopper], [Confluence], [FishEye], [Bamboo] and [Crowd]. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h2. Rushing into the Dragon's Lair

Start at stage 1. Meet the dragon if you dare!
{children}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707187</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917464</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage, you will Configure JIRA and FishEye, so that code commits are visible in JIRA and  JIRA issues are visible in FishEye.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

(i) The instructions on this page have been tested with JIRA 4.0.0 and FishEye 2.0.4.

h2. Step 1. Configure JIRA 

h4. Enabling Subtasks in JIRA
JIRA sub-tasks are disabled by default. To enable sub-tasks:

# Log in as a user with the 'JIRA Administrators' global permission.
# Bring up the administration page by clicking either the 'Administration' link on the top bar or the title of the Administration box on the dashboard.
# Locate the 'Global Settings' sub-menu on the left hand side of the screen, and choose Sub-Tasks from the list.
# The 'Sub-Tasks' administration screen will be displayed. Click the 'Enable' link.
# The page will reload and inform you that the sub-tasks are now enabled. A default sub-task issue type has also been automatically created. You can edit it by selecting the Edit link in the Operations column.

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/subtasks.html] for more detail on this step.

h4. Enable Unassigned Issues and Remote API access in JIRA
# Log in as a user with the '*JIRA Administrators*' global permission.
# Bring up the administration page by clicking either the '*Administration*' link on the top bar or the title of the Administration box on the dashboard.
# On the panel on the left, under the title '*Global Settings*', click on the link labelled '*General Configuration*'.
# Click 'Edit Configuration'. Under the '*Options*' heading, change '*Allow unassigned issues*' to '*ON*'.
# On the same page, change '*Allow remote API access*' to '*ON*'.
# Save your changes. 

See the [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.4/configure.html] for more detail on this step.

h2. Step 2. Configure FishEye 

To configure FishEye for JIRA integration, you must add a JIRA server in the admin interface and then edit the default JIRA server mappings.

h4. Add a JIRA Server to FishEye

# To set up JIRA integration, open the Administration screen and then click '*JIRA Servers*' under the '*Global Settings*' sub-menu on the left navigation bar. The '*View JIRA Servers*' administration page opens.
# To add a new JIRA server from the View JIRA Servers page, click '*Add JIRA Server*'. The '*Add JIRA Server*' page opens. A number of fields and options must be filled out or selected on this page. See below for detailed information on each field.
# Fill in the *Name* field with a descriptive name for the JIRA server. This setting is required. 
# Fill in the *URL* field with the Internet address of the JIRA server. This setting is required. 
# For the *Allow Unassigned* setting, select True or False. (this setting allows or disallows unassigned sub-tasks). This setting is not required. 
# Fill in the *Username* field with the username of an account on the JIRA instance (All activity that takes place will be attributed to this user, unless using the Trusted Application setting). This setting is required. 
# Fill in the *Password* field with the password for the account on the JIRA instance. This setting is required. 
# For the *Include in Activity Streams* setting, check the box to allow JIRA information to appear on the Dashboard. This setting is not required. 
# For the *Authenticate as Trusted Application* setting,check the box to allow the system to interface with JIRA and let users log on with their own accounts (and use their own accounts on the JIRA server. See the [FishEye documentation|http://confluence.atlassian.com/display/FISHEYE/Trusted+Applications] and [JIRA documentation|http://www.atlassian.com/software/jira/docs/v3.13.2/trusted_applications.html] on trusted applications. [Known Issues|http://confluence.atlassian.com/display/FISHEYE/JIRA+Integration+in+FishEye#JIRAIntegrationinFishEye-KnownIssues]. This setting is not required. 

Once you've filled out the necessary fields, click '*Test*' to ensure that your details are correct. If you have a positive message return from the test, click '*Save*'. Leave the View JIRA Servers page open for the next step.

h4. Editing Default JIRA Server Mappings

(i) This setting has three effects; it enables the feature that shows JIRA information in a dynamic window when you hover the mouse over a JIRA issue key; it will also turn every issue key into a hyperlink to that repository in FishEye. 

To enable this feature, click '*Edit Default JIRA Server Mappings*' from the View JIRA Servers page. The '*Map JIRA Project Default*' page opens.

On this page, select the FishEye repositories or Crucible Projects (when using Crucible only) that you wish to associate with all the JIRA servers you have configured for use. You can click '*add all*' to quickly include them all in this category. You can remove individual items by clicking the small 'X' marks.

Once you've finished, click '*Save*'.

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it.

To configure the FishEye Plugin in JIRA:

# Go to the '*JIRA Administration*' menu, then click '*FishEye Confguration*'. 
# In the '*Base URL*' field, enter the URL of your FishEye instance.
# Enter the username and password of a FishEye user?



(/) You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA.....

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

# Add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
#* 'Recent Commits' gadget
#* 'Charts' gadget


{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

JIRA Victories:
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

(/) Your JIRA dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)......

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Configure Crucible].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201852006</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424911</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392211</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424914</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392214</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424916</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392216</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424918</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392218</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424919</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392219</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">245859956</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Development Platform|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:]
* [REST APIs|REST:]
* [Confluence Development Hub|CONFDEV:]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">245827458</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209619125</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209586501</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506608</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}. https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/testBuild/successBuild/
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can link from Bamboo straight through to FishEye.
{color:red}*TBC and screenshot*{color}

(/) Bamboo dash with JIRA links?
{color:red}*TBC and screenshot*{color}

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\


* View the JIRA issues for a [build result|BAMBOO:Viewing the JIRA Issues for a Build Result].

In JIRA:
* View the Bamboo builds that relate to a [particular JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue].
* View the Bamboo builds that relate to a [JIRA project|JIRA:Browsing a Project's Bamboo Builds]
* or [version|JIRA:Browsing a Version's Bamboo Builds].


{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473864</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424928</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392228</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674223</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

h2. Install Confluence

# Install Confluence 3.0.1.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}

h2. Install AppLinks Plugin into Confluence
# *Install applinks plugin into Confluence*
# *Confluence Administration*

{include:_Dragons Problem or Victory|nopanel=true}

h2. Try it Out

## create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
## configure Confluence to have a base URL (for applinks)
## configure the space to be linked to the JIRA project via app links

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 8 - Show JIRA Issues in Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707205</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674226</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

h2. Install Bamboo

# Install Bamboo
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build
# (/) *Victory* \- you can now see a single build that has successfully run

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 10 - Show JIRA Issues in Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707208</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424931</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392231</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424933</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392233</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424934</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392234</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674229</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

h2. Add a Bamboo Gadget to JIRA
# *Bamboo Gadget* \- add a Bamboo gadget to your dashboard
# (/) *The battle is won, the dragon is slain* \- in JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you a [dragonslayer t-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707211</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424935</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392235</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424936</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.

(/) _Hint_: Commit a changeset to your repository and put '*DRA-2*' into the commit comment. You will see the changeset appear in the 'Source' tab on your 'DRA-2' issue.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392236</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674233</id>
<property name="body"><![CDATA[Beware, all ye who enter, for here there be dragons! This is the starting point for your dragon quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h2. Rushing into the Dragon's Lair

Please read the introduction [below|#introduction].

Then you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA] for xxxxxx
* [GreenHopper] for xxxxxx
* [Confluence], the enterprise wiki
* [FishEye] for xxxxxxx
* [Bamboo] for xxxxxxx
* [Crowd] for xxxxxxx

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707215</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424939</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392239</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917408</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review. {color:red}*TBC*{color}
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis. {color:red}*TBC*{color}
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851950</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424883</id>
<property name="body"><![CDATA[Requirements: *PostgreSQL version 8.3.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Download [PostgreSQL|http://www.postgresql.org/download/] -- Get the latest 8.3.x. For the simplest installation, choose one of the one-click installers.
# Install PostgreSQL. If you chose one of the PostgreSQL one-click installers, this is simple: Run the executable that you downloaded and follow the prompts. If necessary, you can refer to the [PostgreSQL installation instructions|http://www.enterprisedb.com/learning/pginst_guide.do]. 
# Enter a password for the super user ('postgres').
# Accept the default port {{5432}}.
# Accept all the other default settings.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392181</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424880</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392178</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917417</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{2.0.S1}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue.
# Click the cross at the top of the edit window to close the window. You will see your planning board again. (There will still be only one card visible, because your new issue is for version 2.0 and by default the planning board shows unscheduled issues.)
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851959</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424892</id>
<property name="body"><![CDATA[_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.)
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392190</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424890</id>
<property name="body"><![CDATA[_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392188</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674153</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 4 - xxxxxxx]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707133</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424888</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392186</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674151</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

h2. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 3 - Install Greenhopper Plugin in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707131</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424902</id>
<property name="body"><![CDATA[_Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392200</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424900</id>
<property name="body"><![CDATA[_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}.
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue, project or version. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392198</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424898</id>
<property name="body"><![CDATA[_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.

(/) _Hint_: Commit a changeset to your repository and put '*DRA-2*' into the commit comment. You will see the changeset appear in the 'Source' tab on your 'DRA-2' issue.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392196</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424896</id>
<property name="body"><![CDATA[_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
* *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392194</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674127</id>
<property name="body"><![CDATA[This is the starting point for your dragon quest. 

!DragonBaby.jpg|thumbnail!

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian t-shirt] too.  

h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating [JIRA], [GreenHopper], [Confluence], [FishEye], [Bamboo] and [Crowd]. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h2. Rushing into the Dragon's Lair

Start at stage 1. Meet the dragon if you dare!
{children}


==========================

h2. 1. *Install Postgres*

# *Download Postgres* \- version 8.3 {color:grey}Must be 8.2 or above for Windows. 8.4 is brand new => 8.3 for safety{color}
# *Install Postgres*
# (/) *Victory* \- {color:grey}You can login to Postgres on the console?{color}

h2. 2. Install Crowd

# *Download Crowd* \- standalone only.
# *Setup Crowd* \- use the internal directory with Postgres. (Don't set up email, OpenID or the demo application.)
# *Create users* \- Create a user in Crowd {color:blue}{*}charlie{*}{color} who we will use everywhere.
# *Create groups* \- Create {{jira-users}}, {{jira-developers}}, {{jira-administrators}}, {{confluence-users}}, {{confluence-administrators}}, and {{bamboo-admin}} groups in Crowd's internal directory
# *Make* {color:#0000ff}{*}charlie{*}{color} *an admin* \- Add charlie to the groups just created.
# (/) *Victory* \- {color:#000000}Can log into Crowd as charlie{color}

h2. 3. Install JIRA

# *Download JIRA* \- standalone only.
# *Setup JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

h2. 4. Install GreenHopper Plugin

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

h2. 5. Install AppLinks plugin

# *Download applinks JARs*
# *Install Applinks in JIRA*
# *Restart JIRA*
# (/) *Victory* \- see Applinks as an enabled plugin in the plugin manager

h2. 6. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

h4. 6.5 FishEye in JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab
# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

h2. 7. Install Confluence

# *Configure Confluence to use Crowd*
# *Install applinks plugin into Confluence*
# *Confluence Administration*
## create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
## configure Confluence to have a base URL (for applinks)
## configure the space to be linked to the JIRA project via app links

h4. 7.3 JIRA _in Confluence_

# *Create content* \- create a page called {color:blue}{*}Roadmap{*}{color}, write 'DRA-1' and check that it's linked properly to the JIRA issue
# *Add JIRA issues macro* \- show issues from JIRA inside a Confluence page

h4. 7.6 Confluence in JIRA

# *Comment on DRA-1* \- add a comment to {color:blue}{*}DRA-1{*}{color} with the content "See the [Roadmap]" for more details and check that Roadmap links to Confluence correctly\!

h2. 8. Install Bamboo

# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build
# (/) *Victory* \- you can now see a single build that has successfully run
# Setup Bamboo's JIRA Integration
# (/) *Victory* \- you can now add {color:blue}{*}DRA-1{*}{color} to the build you just ran\!

h4. 8.5 Bamboo in JIRA

# *Install the Bamboo plugin in JIRA*
# (/) *Victory* \- you should see
# *Bamboo Gadget* \- add a Bamboo gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo)]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707107</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424909</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392209</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">245860002</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Development Platform|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:]
* [REST APIs|REST:]
* [Confluence Development Hub|CONFDEV:]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|BAMBOODEV:]
* [Crowd Development Hub|CROWDDEV:]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">245827508</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424904</id>
<property name="body"><![CDATA[_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t+dragon+slayers+one+and+all!+I've+completed+stage+1+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392202</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917404</id>
<property name="body"><![CDATA[!Dragon-Banner-2-700px.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and change some optional configuration values.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851946</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917440</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851982</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424851</id>
<property name="body"><![CDATA[_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392148</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917452</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* If you have a *virus checker* running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again. 

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851994</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674184</id>
<property name="body"><![CDATA[This is the starting point for your dragon quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian t-shirt] too.  

h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating [JIRA], [GreenHopper], [Confluence], [FishEye], [Bamboo] and [Crowd]. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h2. Rushing into the Dragon's Lair

Start at stage 1. Meet the dragon if you dare!
{children}


==========================

h2. Stage 1. *Install your Database - PostgreSQL*

# *Download PostgreSQL* \- version 8.3
# *Install PostgreSQL*
# (/) *Victory* \- {color:grey}You can login to Postgres on the console?{color}

h2. Stage 2. Install Crowd

# *Download Crowd* \- standalone only.
# *Set up Crowd* \- use the internal directory with PostgreSQL. (Figure out what to do about email)
# *Create users* \- Create a user in Crowd {color:blue}{*}charlie{*}{color} who we will use everywhere.
# *Create groups* \- Create {{jira-users}}, {{jira-developers}}, {{jira-administrators}}, {{confluence-users}}, {{confluence-administrators}}, and {{bamboo-admin}} groups in Crowd's internal directory
# *Make* {color:#0000ff}{*}charlie{*}{color} *an admin* \- Add charlie to the groups just created.
# (/) *Victory* \- {color:#000000}Can log into Crowd as charlie{color}

h2. Stage 3. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

h2. Stage 4. Install GreenHopper Plugin in JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

h2. Stage 5. Install AppLinks Plugin in JIRA

# *Download applinks JARs*
# *Install Applinks in JIRA*
# *Restart JIRA*
# (/) *Victory* \- see Applinks as an enabled plugin in the plugin manager

h2. Stage 6. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

h4. Stage 7. Show FishEye Content in JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab
# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

h2. Stage 8. Install Confluence

# Install Confluence 3.0.1.
# *Configure Confluence to use Crowd*
# *Install applinks plugin into Confluence*
# *Confluence Administration*
## create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
## configure Confluence to have a base URL (for applinks)
## configure the space to be linked to the JIRA project via app links

h4. Stage 9. Show JIRA Issues in Confluence

# *Create content* \- create a page called {color:blue}{*}Roadmap{*}{color}, write 'DRA-1' and check that it's linked properly to the JIRA issue
# *Add JIRA issues macro* \- show issues from JIRA inside a Confluence page

h4. Stage 10. Show Confluence Links in JIRA

# *Comment on DRA-1* \- add a comment to {color:blue}{*}DRA-1{*}{color} with the content "See the [Roadmap]" for more details and check that Roadmap links to Confluence correctly\!

h2. Stage 11. Install Bamboo

# Install Bamboo
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build
# (/) *Victory* \- you can now see a single build that has successfully run

h2. Stage 12. Show JIRA Issues in Bamboo

# Setup Bamboo's JIRA Integration
# (/) *Victory* \- you can now add {color:blue}{*}DRA-1{*}{color} to the build you just ran\!

h4. Stage 13. Show Bamboo Builds in JIRA

# *Install the Bamboo plugin in JIRA*
# (/) *Victory* \- you should see
# *Bamboo Gadget* \- add a Bamboo gadget to your dashboard
# (/) *The battle is won, the dragon is slain* \- in JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo)]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707164</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674164</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

h2. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 6 - Show FishEye Sources Views in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707144</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424868</id>
<property name="body"><![CDATA[In this step you will create some data in JIRA, including a project and an issue, for use in the subsequent stages of this integration procedure. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392166</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917424</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.  
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window.)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851966</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674165</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

h2. Install FishEye Plugin into JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 7 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707145</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917426</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the bas URL for your Confluence site (e.g. {{http://coopers:8080}}or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851968</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917432</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.
Try these FishEye features:
* *Rapid search of your repository contents via the Quick Nav bar*: Start typing in the 'Search' box at top right of the FishEye screen. The results appear as you type.
** *RSS activity feed*: Go to the 'Activity' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*' to get an RSS feed of commit activity in your repository.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSource.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851974</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203424877</id>
<property name="body"><![CDATA[Requirements: *Sun JDK 1.5 or higher*. Note that the JRE alone is not enough.

If you don't have the right version of the Java Development Kit (JDK) already installed, follow the steps below to get it.
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Download the [Sun Java SE Development Kit|http://java.sun.com/javase/downloads/index.jsp] -- Get the latest JDK 6.
# Follow the [Sun installation instructions|http://java.sun.com/javase/6/webnotes/install/index.html].
# Make sure you have a {{JAVA_HOME}} environment variable pointing to the root directory of the JDK. Some JDK installers set this automatically.
#* Check by typing one of the following into a command window, depending on your operating system.
#** On Windows: {{echo %JAVA_HOME%}}
#** On Linux or UNIX: {{echo $JAVA_HOME}}
#* If the above command does not show you the path to your JDK, please refer to the Crowd instructions on [setting JAVA_HOME|CROWD:Setting JAVA_HOME].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392175</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917435</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review. {color:red}*TBC*{color}
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis. {color:red}*TBC*{color}
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851977</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945208</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Subtasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable subtasks for Crucible. This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will reload and the 'Subtask Settings' section will display different fields. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with subtasks configured+_ 

!CrucibleJIRASettingsSubtasks-v5.png|thumbnail!


Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and select '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' on the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right-hand panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, meaning the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it. You will create a JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen Issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible dashboard and click the '*Activity*' tab.
# Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# Click '*This comment does not mention dragons*' in the '*Latest Comment*' column on the review details screen.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Click '*Assign to Me*'.
# Click '*Create*'. The key of your new issue (DRA-4) will be displayed in the review comment, with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will open in JIRA.
# Click your browser's back button to see your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will open in JIRA with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912763</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945210</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows service, so that it starts each time you start Windows, by running {{\{BAMBOO_INSTALL\InstallAsService.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}}. You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add a builder as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Builder Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Java\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.2.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.v22.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Plan Name: {{Main}}
#* Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# The 'Plan Summary' for the 'Main' plan in the 'Dragons' will appear. The 'Recent History' has a link to the build result, '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v5.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v5.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*\#1*' in the '*Recent History*' to open the build result summary.
* Click '*Comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+8+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912765</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">232589461</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">232556818</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945212</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_09.png! 
_You're nearly there. Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *5 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo and Subscribe JIRA to Bamboo Gadgets

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
# Now you will make your Bamboo gadgets available in JIRA, so that JIRA users will be able to add any Bamboo gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Bamboo site (e.g. {{[http://coopers:8085]}} or {{[http://www.foobar.com:8085]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Two Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardStage9-v5.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912767</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">232589460</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye and Crucible]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">232556816</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945202</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then select '*Administration*' from the dropdown menu
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS Feed*'.

(/) Click the changeset number ({{153936}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912756</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945206</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Add a JIRA-FishEye Application Link 

In this step you will link your JIRA and FishEye servers by creating an application link.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye Admin screen.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your FishEye site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'. The application link will be created and displayed on the 'Configure Application Links' page.
# Click '*Configure*' next to the '*Your Company JIRA*' application link.
# Change the '*Application Name*' to {{Dragons JIRA}} and click '*Update*'.
# Click '*JIRA Settings*' next to the '*Dragons JIRA*' application link.
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox.
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Adding JIRA as a trusted application in FishEye{+}_ 

!FishEyeCrucibleAppLinks.png|thumbnail!

h2. Step 2. Link a FishEye Repository to a JIRA Project and Subscribe JIRA to FishEye Gadgets

In this step you will link your FishEye repository to your JIRA project via a project link. This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye Admin screen.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and select '*Application Links*' from the dropdown menu.
# Click '*Add Link*' then select '*Dragons JIRA (JIRA)*' from the dropdown menu.
# Click '*Create*'. Your FishEye repository is now linked to your JIRA project.
# Now you will make your FishEye gadgets available in JIRA, so that JIRA users will be able to add any FishEye gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060]}} or {{[http://www.foobar.com:8060]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The JIRA FishEye configuration screen will appear. Click '*Edit Primary Configuration*' at the bottom of the screen.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link. If prompted, log in to FishEye.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses of your FishEye/Crucible site, separated by commas. For example: 127.0.0.1, 172.20.5.95.
You can find the IP addresses of your FishEye/Crucible site by viewing the 'Remote Addresses' tab for the FishEye application in Crowd.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left-hand menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses of your JIRA site, one per line. For example: 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths, one per line: 
#** {{/plugins/servlet/streams}}
#** {{/sr/jira.issueviews:searchrequest}}
#** {{/secure/RunPortlet}}
#** {{/rest}}
#** {{/rpc/soap}}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.


Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912760</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">232589474</id>
<property name="body"><![CDATA[{color:#6e2e28}*Problems?*{color} Please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
{color:green}*Victory?*{color}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Please continue.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">232556830</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">229212450</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:]
* [REST APIs|REST:]
* [Confluence Development Hub|CONFDEV:]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">229179710</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945178</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}

h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}

h2. Step 2. Install JIRA

Requirements: *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 1 [above|#database].
#** *Schema* -- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}/bin/config.sh}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{/usr/local/jira-home/}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 1 [above|#database].
#** *Schema* -- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Application Title -- Accept the default application title.
#* Mode -- Accept the default mode.
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{[http://coopers:8080]}}. Or specify a website address, such as {{[http://www.foobar.com:8080]}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}{{{}{*}charlie{*}{}}}{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
{panel}

_{+}Screenshot 2: The JIRA Dashboard when you first log in{+}_
\\
\\ !JIRADashboardOnLogin-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}

h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory\!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}

h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA|Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912732</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506484</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. 

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473737</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674121</id>
<property name="body"><![CDATA[h2. 1. *Install Postgres*

# *Download Postgres* \- version 8.3 {color:grey}Must be 8.2 or above for Windows. 8.4 is brand new => 8.3 for safety{color}
# *Install Postgres*
# (/) *Victory* \- {color:grey}You can login to Postgres on the console?{color}

h2. 2. Install Crowd

# *Download Crowd* \- standalone only.
# *Setup Crowd* \- use the internal directory with Postgres. (Don't set up email, OpenID or the demo application.)
# *Create users* \- Create a user in Crowd {color:blue}{*}charlie{*}{color} who we will use everywhere.
# *Create groups* \- Create {{jira-users}}, {{jira-developers}}, {{jira-administrators}}, {{confluence-users}}, {{confluence-administrators}}, and {{bamboo-admin}} groups in Crowd's internal directory
# *Make* {color:#0000ff}{*}charlie{*}{color} *an admin* \- Add charlie to the groups just created.
# (/) *Victory* \- {color:#000000}Can log into Crowd as charlie{color}

h2. 3. Install JIRA

# *Download JIRA* \- standalone only.
# *Setup JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

h2. 4. Install GreenHopper Plugin

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

h2. 5. Install AppLinks plugin

# *Download applinks JARs*
# *Install Applinks in JIRA*
# *Restart JIRA*
# (/) *Victory* \- see Applinks as an enabled plugin in the plugin manager

h2. 6. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

h4. 6.5 FishEye in JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab
# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

h2. 7. Install Confluence

# *Configure Confluence to use Crowd*
# *Install applinks plugin into Confluence*
# *Confluence Administration*
## create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
## configure Confluence to have a base URL (for applinks)
## configure the space to be linked to the JIRA project via app links

h4. 7.3 JIRA _in Confluence_

# *Create content* \- create a page called {color:blue}{*}Roadmap{*}{color}, write 'DRA-1' and check that it's linked properly to the JIRA issue
# *Add JIRA issues macro* \- show issues from JIRA inside a Confluence page

h4. 7.6 Confluence in JIRA

# *Comment on DRA-1* \- add a comment to {color:blue}{*}DRA-1{*}{color} with the content "See the [Roadmap]" for more details and check that Roadmap links to Confluence correctly\!

h2. 8. Install Bamboo

# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build
# (/) *Victory* \- you can now see a single build that has successfully run
# Setup Bamboo's JIRA Integration
# (/) *Victory* \- you can now add {color:blue}{*}DRA-1{*}{color} to the build you just ran\!

h4. 8.5 Bamboo in JIRA

# *Install the Bamboo plugin in JIRA*
# (/) *Victory* \- you should see
# *Bamboo Gadget* \- add a Bamboo gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo)]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707101</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506481</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473734</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945182</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], where you're sure to meet other battle-weary dragon slayers.{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912736</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506489</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage one|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473742</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506488</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough.[Stage one|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473741</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506497</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard to configure your Bamboo server.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
{panel} 

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}
#* Name: {{bamboo}}
#* Description: {{Atlassian Bamboo}}
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

In this step you will check that your Bamboo configuration includes your default builder and JDK. Then you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# In Bamboo, click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '#Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. Bamboo supports a number of builders, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using *Maven 2*. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'. 
# If the builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}
#* Type: {{Maven 2.0}}
#* Label: {{Maven 2}}
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0 }}.
# {color:red}*TBC -- got to this point.*{color}















{panel}

Full details are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473750</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945198</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

In this step you will configure Confluence to use Crowd for SSO and centralised user management. To do that, you will define the Confluence application in Crowd, define the Crowd user directory in Confluence , and configure the SSO property files. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If this address is not already present, add it: {{127.0.0.1}}.
# Connect Confluence to the Crowd user directory:
#* Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* Select '*User Directories*' from the '*Security*' section of the Confluence Administration Console.
#* Click '*Add Directory*', select type '*Atlassian Crowd*' and click '*Next*'.
#* The Crowd server configuration screen will appear. Enter the following information:
#** Name -- Accept the default value, {{Crowd Server}}.
#** Server URL -- Enter the web address of your Crowd server, e.g. {{http://www.foobar.com:8095/crowd}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence in the Crowd 'Add Application' wizard above.
#** Application Password -- Enter the password that you defined for Confluence in the Crowd 'Add Application' wizard above.
#** Crowd Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the Crowd directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*Crowd Server*', so that the Crowd directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Configure the Confluence property files for SSO:
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. 
#* Comment out the default {{authenticator}} node:
{code:xml}
<!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
{code}
#* Uncomment the line that contains the new authenticator: 
{code:xml}
<authenticator class="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>
{code}
#* Save the {{seraph-config.xml}} file.
#* Copy the {{crowd.properties}} file from {{\{CROWD_INSTALL\}/client/conf/}} to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}, replacing the existing file.
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#** application.name: {{confluence}}
#** application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
#* Save the {{crowd.properties}} file.
# (/) You now have SSO across Confluence, JIRA and Crowd! Try it:
#* Start your Confluence server again, and go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* If you are already logged in to Crowd, you will not need to log in to Confluence. SSO ensures that you are already logged in as {color:blue}*charlie*{color}.
#* Log out of Confluence.
#* Go to Crowd and click an option. Crowd will prompt you to log in. When you logged out of Confluence, SSO ensured that you logged out of Crowd and JIRA too.
#* Log in to JIRA, Confluence or Crowd. You will be logged in to all three.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application] and the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 3 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click '*Search*'.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
{panel}

_{+}Screenshot 4 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 5 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912752</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506509</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then enable some optional Bamboo features, as required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}
#* Type: {{Maven 2.0}}
#* Label: {{Maven 2}}
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Now you will check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}
#* Label: {{JDK 1.6}}
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}
#* Name: {{bamboo}}
#* Description: {{Atlassian Bamboo}}
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# In Bamboo, xxxxxxxxxxxxxxx
# {color:red}*TBC -- got to this point.*{color}















{panel}

Full details are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473762</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945190</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png!
_Beware of low-flying worms. You are embarking on stage 3 of the_ _[Atlassian Dragon Quest|Here Be Dragons]__._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper {excerpt-include:_DragonsVersionNumber-GH|nopanel=true} for JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.

In this step you will install the GreenHopper plugin into JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Select '*Plugins*' from the '*System*' section of the 'Administration' menu.
# The plugin management page will appear, showing the 'Manage Existing' tab. Click the '*Install*' tab.
# Enter {{greenhopper}} into the search box and click '*Search*'.
# The GreenHopper plugin will appear in the list of plugins. Click the '*GreenHopper*' plugin name.
# The plugin details will appear. Click '*Install Now*'.
# When the plugin has been successfully installed, shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Start your JIRA server again, and log in to JIRA as {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Set up your GreenHopper license key:
#* Select '*License Details*' from the '*GreenHopper*' section of the 'Administration' menu.
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get a '*GreenHopper for JIRA 4: Evaluation*' license key.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

_{+}Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA{+}_
\\
\\  !GreenHopperPlanningBoardDefault.png|thumbnail!\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to update your issues via the GreenHopper tabs or via the standard JIRA interface. For this exercise you will do your updates via GreenHopper.

First you will create two 'sprints', also known as 'milestones'. A sprint is a short period of time, two weeks for example, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints. Finally you will add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Add*' button above the version cards, near the top right of the planning board.
# The 'Add Version' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
#* Leave the default values for the other fields.
#* Click '*Create and Close*'.
# Follow the above steps to add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the sprint box for sprint '*2.0.S1*'.
# Within the sprint box click the gear icon (top right) and select '*Toggle visibility*' or double click the sprint title bar to expand the box.
# The '*Parent*' is currently set to 'none'. Click '*Parent*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Parent*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next you will add a new issue, also known as a card. Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. 
# You will see your planning board again. It currently shows no cards. Click the version number dropdown near the top left of the screen (currently showing '2.0.s2') and select '*Unscheduled*' to see all the cards.
# Click the card for issue {color:blue}{*}DRA-1{*}{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}{*}DRA-2{*}{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty, because it is currently showing cards for version 'Unscheduled'. Click the version number '*2.0.S1*' at the top of the version 2.0.S1 box on the right. You should now see your two cards '{color:blue}{*}DRA-1{*}{color}' and '{color:blue}{*}DRA-2{*}{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The value in the version number dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can double click the title bar of each version box, to minimise or expand the box.
# Mark one of your issues as complete:
#* Click the down arrow next to 'Planning Board' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'To Do' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*Done*' column.
#* The '*Transitioning Issue*' screen will appear. Select '*Close Issue*' and click '*Update*'.
#* The '*Close Issue*' screen will appear. Click '*Close Issue*'.
{panel}

_{+}Screenshot 2 (click to enlarge): The GreenHopper task board for version 2.0{+}_
\\
\\  !GreenHopperTaskBoard-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Use the Scrum Template for your Project and Add a Story

GreenHopper includes a project template for projects using the Scrum methodology. The template adds custom fields like ranking fields, story points, and so on, to your project. It also allows you to create stories, epics and technical tasks. In this step you will apply the Scrum template to your project and create a story.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the '*Tools*' menu on the planning board and click '*Configuration*'.
# The project configuration page will appear. Click the '*General*' tab. 
# Select '*Scrum*' from the '*Project Template*' dropdown menu.
# Click '*Change template*' on the confirmation window.
# Next you will create a new story. Go back to your planning board and click '*New Card*'. Enter the following values:
#* Card type: {{Story}}
#* Priority: {{Major}}
#* Summary: {{As a dragon slayer I would like to wield an extremely big sword.}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Business Value: {{10}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
#* Story Points: {{10}}
# Click '*Create and Close*'. You will see your planning board again, showing your story.
{panel}

_{+}Screenshot 3 (click to enlarge): The GreenHopper planning board with story{+}_
\\
\\  !GreenHopperPlanningBoardStory-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*GreenHopper Agile Gadget*' and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*GreenHopper Agile Gadget*':
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select Select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legend*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*GreenHopper Agile Gadget*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}{*}green{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile Gadget'
* The 'Assigned to Me' gadget
* The 'Projects' gadget

_{+}Screenshot 4 (click to enlarge): JIRA dashboard with 3 gadgets{+}_
\\
\\  !JIRADashboard3Gadgets-v5.png|thumbnail!\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}

h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install Confluence|Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912744</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528829</id>
<property name="body"><![CDATA[This is the home page for the Atlassian Product Integration space.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496134</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528828</id>
<property name="body"><![CDATA[The children of this page contain information which is *included in other pages*. This is a library of re-usable information chunks.

If you want to change any of these pages, be aware that:
* Changing page names is problematic --- you will need to change all the {{include}} and {{excerpt-include}} macros manually.
* The content is used in many places --- make sure your change is generic enough to fit the contexts in which the pages are used.

{children}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496133</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528821</id>
<property name="body"><![CDATA[The ways your Atlassian applications work together and how you can make it happen]]></property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945166</id>
<property name="body"><![CDATA[In this step you will create some data in JIRA, including a project and an issue, for use in the subsequent stages of this integration procedure. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top right of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912720</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528844</id>
<property name="body"><![CDATA[{include:_Watch this space|nopanel=true}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496151</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240945158</id>
<property name="body"><![CDATA[{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level. This severity level is based on our self-calculated CVSS score for each specific vulnerability. CVSS is an industry standard vulnerability metric. You can learn more about CVSS at [FIRST.org|http://www.first.org/cvss/cvss-guide.html] web site.

CVSS scores are mapped into the following severity ratings:

* Critical
* High
* Moderate
* Low

An approximate mapping guideline is as follows:

|| CVSS score range || Severity in advisory ||
| 0 -- 2.9 | Low |
| 3 -- 5.9 | Medium |
| 6.0 -- 7.9 | High |
| 8.0 -- 10.0 | Critical |

Below is a summary of the factors which illustrate types of vulnerabilities usually resulting in a specific severity level. Please keep in mind that this rating does not take into account details of your installation.

h5. Severity Level: Critical

Vulnerabilities that score in the Critical range usually include:
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers.
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

For critical vulnerabilities, is advised that you patch or upgrade as soon as possible, unless you have other mitigating measures in place. For example, if your installation is not accessible from the Internet, this may be a mitigating factor.

h5. Severity Level: High

Vulnerabilities that score in the High range usually have the following characteristics:

* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* Exploitation does not result in a significant data loss.

h5. Severity Level: Moderate

Vulnerabilities that score in the Moderate range usually have the following characteristics:

* Denial of service vulnerabilities that are difficult to set up.
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

h5. Severity Level: Low

Vulnerabilities in the Low range typically have very little impact on an organisation's business. Exploitation of such vulnerabilities usually requires local or physical system access. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912712</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">164528831</id>
<property name="body"><![CDATA[{pagetreesearch:rootPage=IDE Plugin Documentation}
{pagetree:root=IDE Plugin Documentation}
[Index|http://confluence.atlassian.com/labels/listlabels-alphaview.action?key=IDEPLUGIN]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">164496137</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">232589435</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">232556791</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506561</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}
#* Type: {{Maven 2.0}}
#* Label: {{Maven 2}}
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}
#* Label: {{JDK 1.6}}
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}
#* Name: {{bamboo}}
#* Description: {{Atlassian Bamboo}}
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Get Bamboo and JIRA Talking

In this step you will xxxxxxxxxx.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First connect JIRA to Bamboo xxxxxxxxxxxxxxxx
# {color:red}*TBC -- got to this point.*{color}
# Now connect Bamboo to your JIRA server. Click '*JIRA Server*' in the left-hand menu.
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL: 
#* Username -- Enter the name of the JIRA account which your Bamboo server will use to login to your JIRA server.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is a JIRA issue key, for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. This should display the following message: '*Successfully retrieved JIRA issue from remote server*'. If not, check that you can login to your JIRA server using the JIRA account and password you have specified.
# When the test is successful, click '*Save*'.  
# {color:red}*TBC -- got to this point.*{color}
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# In Bamboo, xxxxxxxxxxxxxxx
# {color:red}*TBC -- got to this point.*{color}















{panel}

Full details are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473815</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506567</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://bamboo.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter {color:blue}*Charlie's*{color} password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. If not, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# When the test is successful, click '*Save*'.  
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# In Bamboo, xxxxxxxxxxxxxxx
# {color:red}*TBC -- got to this point.*{color}















{panel}

Full details are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

(/) You can now ............
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)

In Bamboo
* Add {color:blue}{*}DRA-1{*}{color} to the build you just ran\! Or put the issue key in the commit rather than manually adding it, and see the flow through. (Edwin to demo.)
* View the JIRA issues for a [build result|BAMBOO:Viewing the JIRA Issues for a Build Result].

In JIRA:
* View the Bamboo builds that relate to a [particular JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue].
* View the Bamboo builds that relate to a [JIRA project|JIRA:Browsing a Project's Bamboo Builds]
* or [version|JIRA:Browsing a Version's Bamboo Builds].


{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Get JIRA and Bamboo Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202473822</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674447</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye Plugin into JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 4 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707449</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674449</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build
# (/) *Victory* \- you can now see a single build that has successfully run

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 10 - Show JIRA Issues in Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707451</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674452</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Add a Bamboo Gadget to JIRA
# *Bamboo Gadget* \- add a Bamboo gadget to your dashboard
# (/) *The battle is won, the dragon is slain* \- in JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)


{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my t-shirt?].{tip} 

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you a [dragonslayer t-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707454</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674454</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 7 - Show FishEye Source Views in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707457</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674460</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye Plugin into JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 8 - Install Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707462</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203429022</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203396562</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674464</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Configure FishEye Plugin into JIRA

# *FishEye plugin* \- configure the FishEye plugin in JIRA (it's bundled, just needs configuration)


(/) *Victory:*
* You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
## 'Recent Commits' gadget
## 'Charts' gadget


(/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 8 - Install Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707466</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674466</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build
# (/) *Victory* \- you can now see a single build that has successfully run

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 9 - Show JIRA Issues in Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707468</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166559968</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for Eclipse and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [Eclipse|http://www.eclipse.org/] displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your Eclipse development environment. 
{excerpt}

+_Screenshot: Bamboo Watched Plans and Build Log in Eclipse_+
\\
\\
!EclipseBuildLog.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for Eclipse|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [Eclipse|http://www.eclipse.org/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for Eclipse Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for Eclipse|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166527223</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994684</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961964</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674478</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build

(/) *Victory:*
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)


{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 10 - Show JIRA Issues in Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707481</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506891</id>
<property name="body"><![CDATA[Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a Bamboo Gadget to JIRA

# Add the 'Bamboo Status' gadget to your dashboard


* Add gadgets to [display the status of your builds|JIRA:Adding the Bamboo Status Gadget] 
* and a [graphical summary of each build plan|JIRA:Adding the Bamboo Plan Summary Gadget].

h2. The Battle is Won, the Dragon is Slain

(/) In JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo) ............

xxxxxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474169</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994662</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961942</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203429050</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will create a wiki space and add a dynamic list of JIRA issues to a wiki page. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203396591</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674494</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}



h2. Try it Out

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
# configure Confluence to have a base URL

*Victory*...




{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 5 - Install AppLinks]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707497</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674492</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Add a Bamboo Gadget to JIRA
# *Bamboo Gadget* \- add a Bamboo gadget to your dashboard
# (/) *The battle is won, the dragon is slain* \- in JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)


{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my t-shirt?].{tip} 

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you a [dragonslayer t-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707495</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994639</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
{panel}|
| Overview | {color:red}Suggested text -- need to test it when Dragons is up and running.{color}
Now that you have enabled Crucible, you can start reviewing the code
committed to your repository:
# Go to the activity stream and find a commit.
# Click the small cog on the right-hand side and select '*Create
Review*' from the dropdown menu.
# Select some reviewers.
# Click '*Start Review*'.
\\
\\
{color:red}Alternative text -- but is too low-level.{color}
With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961918</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674495</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build

(/) *Victory:*
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)


{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 11 - Get JIRA and Bamboo Talking]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707498</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674496</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 3 - Install GreenHopper into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707499</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994641</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# {color:red}It's telling me I need to log in. Maybe I have to set up Crowd auth for Crucible?{color}
# Select some reviewers.
# Click '*Start Review*'.
\\
\\
{color:red}Alternative text -- but is too low-level.{color}
With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961920</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994646</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code. 
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* textbox. Crucible will offer a dynamically changing list of matches.
#* Otherwise, enter an email address in the '*Invite Reviewers*' textbox and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961925</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">61</id>
<property name="name"><![CDATA[plugin]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2005-09-30 23:39:43.125</property>
<property name="lastModificationDate">2008-06-20 08:50:32.687</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506874</id>
<property name="body"><![CDATA[{color:#6e2e28}*Problems?*{color} Please go immediately to the [Dragon Slayers' Forum].
{color:green}*Victory?*{color}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Please continue.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474152</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994648</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code. 
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* textbox. Crucible will offer a dynamically changing list of matches.
#* Otherwise, enter an email address in the '*Invite Reviewers*' textbox and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961927</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506868</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}. https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/testBuild/successBuild/
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\


(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!


{color:red}*TBC -- Got to this point*{color}

In JIRA:
* View the Bamboo builds that relate to a [particular JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue].
* View the Bamboo builds that relate to a [JIRA project|JIRA:Browsing a Project's Bamboo Builds]
* or [version|JIRA:Browsing a Version's Bamboo Builds].


{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474145</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674503</id>
<property name="body"><![CDATA[Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h2. Rushing into the Dragon's Lair

Please read the introduction [below|#introduction].

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest] that you're starting the Atlassian Dragon Quest.{tip}


Then you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA] for xxxxxx
* [GreenHopper] for xxxxxx
* [Confluence], the enterprise wiki
* [FishEye] for xxxxxxx
* [Bamboo] for xxxxxxx
* [Crowd] for xxxxxxx

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707506</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506869</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. 
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.) 
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository -- Select your repository type, e.g. {{Subversion}}.
#* Repository URL -- Enter a URL pointing to the location of your source project in your repository, e.g. {{[http://svn.foo.com/svn/trunk/myproject/]}}. https://svn.atlassian.com/svn/private/atlassian/bambootest/trunk/testBuild/successBuild/
#* Username, Authentication Type and Password -- Enter the username and login details required to access the Subversion repository. 
#* Web Repository URL -- Enter the FishEye link to your source project in your repository, e.g. {{[http://fisheye.foobar.com:8060/browse/trunk/myproject/]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* Test result files -- Select '*The build will produce test results*' if your source project contains unit tests. If necessary, specify your custom '*Test Results Directory*'.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build is finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. In our example, the first build fails. See screenshots 3 and 4 below.

{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build result -- build 1 failed_+
\\
\\
!BambooFailedBuild.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) Include a JIRA issue key in a commit comment, to see the Bamboo-JIRA integration in a build result. In our example, we have changed our code to fix the build, and included the JIRA issue key {color:blue}{*}DRA-2{*}{color} in the  commit comment. Notice the link through to JIRA on the Bamboo screen, and the panel showing the JIRA issue details.

(/) Click the source link on the Bamboo build result to view the changed code in FishEye.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo build result -- build 2 passed_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
You can read more about linking JIRA issues to a build in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build].

(/) In JIRA, you can see the Bamboo builds that relate to a particular JIRA issue.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
There is more in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds].

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474147</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994650</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username {color:blue}*charlie*{color}, meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a dynamically changing list of matches.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '*CR-1*'. Please refer to the Crucible documentation on [performing a review|CRUCIBLE:Performing the Review] that has been assigned to you, [adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review, managing the [review workflow|CRUCIBLE:Summarising and Closing the Review] and integrating your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961929</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674387</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 4 - Install AppLinks into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707390</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506921</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for the required version.)
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e} 
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest. GreenHopper for agile dragon slayers @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474200</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674390</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 6 - Show FishEye Source Views in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707392</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506925</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go.
{color:red}*Add dragon banner here*{color} 

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

As shown in screenshot 1 below, there is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue to see the new tab. The 'Source' tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was referenced in the commit message. The tab will be empty at the moment, because no-one has committed source to your repository tagged with the JIRA issue key.

(/) _Hint_: Commit a changeset to your repository and put '*DRA-2*' into the commit comment. You will see the changeset appear in the 'Source' tab on your 'DRA-2' issue.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
As shown in screenshot 2 below, there is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' proejct to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '*Dragons*' project.) The 'Source' tab will show the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
The FishEye gadget on your JIRA dashboard displays the changelog for your 'Dragons' repository. You can click through to view a changeset in FishEye. Screenshot 4 below shows such a changeset.
\\
\\
+_Screenshot 4 (click to enlarge): Click through to changeset in FishEye_+
\\
\\
!FishEyeChangeSet.png|thumbnail!


{include:_Dragons Problem or Victory|nopanel=true} 

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474204</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674386</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 3 - Install GreenHopper into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707388</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674396</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build
# (/) *Victory* \- you can now see a single build that has successfully run

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 10 - Show JIRA Issues in Bamboo]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707398</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674392</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye Plugin into JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 7 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707394</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674393</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}

h2. Install AppLinks Plugin into Confluence
# *Install applinks plugin into Confluence*
# *Confluence Administration*

{include:_Dragons Problem or Victory|nopanel=true}

h2. Try it Out

## create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
## configure Confluence to have a base URL (for applinks)
## configure the space to be linked to the JIRA project via app links

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Go to the Next Stage

[Dragons Stage 8 - Show JIRA Issues in Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707395</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506904</id>
<property name="body"><![CDATA[Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474182</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">233310299</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">233439251</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[sascha.meinert]]></property>
<property name="creationDate">2011-03-02 03:58:11.879</property>
<property name="lastModificationDate">2011-03-02 03:58:11.879</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674400</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Add a Bamboo Gadget to JIRA
# *Bamboo Gadget* \- add a Bamboo gadget to your dashboard
# (/) *The battle is won, the dragon is slain* \- in JIRA your dashboard now has 5 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you a [dragonslayer t-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707402</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506898</id>
<property name="body"><![CDATA[Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# The gadget will display the changelog for your 'Dragons' repository. Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}


* Add gadgets to [display the status of your builds|JIRA:Adding the Bamboo Status Gadget] 
* and a [graphical summary of each build plan|JIRA:Adding the Bamboo Plan Summary Gadget].

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474176</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506901</id>
<property name="body"><![CDATA[Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!
{color:red}*Add dragon banner here*{color}

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
#* The gadget will display information about the latest builds in the plan. 
# Approve and configure the '*Bamboo Plan Summary Chart*' gadget too.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'FishEye Recent Changesets' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}


h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474179</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674430</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}

h2. Install AppLinks Plugin into Confluence
# *Install applinks plugin into Confluence*
# *Confluence Administration*

{include:_Dragons Problem or Victory|nopanel=true}

h2. Try it Out

## create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
## configure Confluence to have a base URL (for applinks)
## configure the space to be linked to the JIRA project via app links

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 8 - Show JIRA Issues in Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707432</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506936</id>
<property name="body"><![CDATA[{color:red}*NOTE --- BIG UGLY HEADING:* This page is a DRAFT and visible to *Atlassian staff only* We'll publish it (and remove this BIG UGLY NOTE) when it's been reviewed and declared worthy.
{color}

Atlassian offers a fully hosted development platform called [JIRA Studio|http://www.atlassian.com/hosted/studio/]. Based on [JIRA|http://www.atlassian.com/software/jira], the popular issue tracker and workflow management tool, JIRA Studio adds industry standard revision control, repository viewer, wiki, and code review, all in one seamless hosted experience.

If you prefer, you can download and install the JIRA Studio components yourself. Below is an overview of the steps you need to take, with links to the detailed installation and configuration guides for each component.

{color:red}Add steps and links here.{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474216</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674435</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye Plugin into JIRA

# *FishEye plugin* \- install the FishEye plugin in JIRA
# (/) *Victory* \- you can see source commits against {color:blue}{*}DRA-1{*}{color} in the source tab

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard
# (/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 7 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707437</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674436</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}



h2. Try it Out

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
# configure Confluence to have a base URL

*Victory*...




{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 8 - Show JIRA Issues in Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707438</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506939</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.

(i) If you already have JIRA installed, please start at [Dragon Slayers with JIRA Already Installed]. 

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474218</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240944976</id>
<property name="body"><![CDATA[Requirements: *PostgreSQL version {excerpt-include:_DragonsVersionNumber-PostgreSQL|nopanel=true}*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download [PostgreSQL|http://www.postgresql.org/download/] -- Get the latest {excerpt-include:_DragonsVersionNumber-PostgreSQL|nopanel=true}. For the simplest installation, choose one of the one-click installers.
# Install PostgreSQL. If you chose one of the PostgreSQL one-click installers, this is simple: Run the executable that you downloaded and follow the prompts. Ensure that you choose UTF8 (unicode) encoding when selecting the locale. If necessary, you can refer to the [PostgreSQL installation instructions|http://www.enterprisedb.com/learning/pginst_guide.do].
# Enter a password for the super user ('postgres').
# Accept the default port {{5432}}.
# Accept all the other default settings.
# Download the PostgreSQL {excerpt-include:_DragonsVersionNumber-PostgreSQL|nopanel=true} JDBC driver from [http://jdbc.postgresql.org/download.html] and save it locally for later use. Get the [JDBC4 Postgresql Driver, Version 8.4-702|http://jdbc.postgresql.org/download/postgresql-8.4-702.jdbc4.jar].
(!) Internet Explorer may rename the file extension from '{{.jar}}' to '{{.zip}}' when you download it. If you are using Internet Explorer, please rename the file so that it has a '{{.jar}}' extension after downloading it.
{panel} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912480</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674432</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 4 - Install AppLinks into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707434</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674446</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [AppLinks] into JIRA, providing the basis for linking between the applications in later stages.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# *Configure FishEye to use Crowd*
# *Set up FishEye's JIRA integration*
# *FishEye Admin Setup*
## configure FishEye to have a base URL (for applinks)
# (/) *Victory* \- you can see your source in FishEye and the links to {color:blue}{*}DRA-1{*}{color} from within the commit work link correctly

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 6 - Show FishEye Source Views in JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707448</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674441</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}



h2. Try it Out

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
# configure Confluence to have a base URL

*Victory*...




{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 8 - Show JIRA Issues in Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707443</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">202506932</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Don your armour and alert your serfs}Please read the introduction [below|#introduction].
If you like, you can [tweet your status|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons].{tip}

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. Getting Help

If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure.
** If you have JIRA but nothing else, please do continue with the integration procedure. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* You must have your own source repository already installed. The instructions in this guide are tailored for SVN. Where relevant, we will refer you to the documentation on configuring other repositories.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">202474211</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674439</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Here Be Dragons Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest].{tip} 

[Dragons Stage 4 - Install AppLinks]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707441</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240944970</id>
<property name="body"><![CDATA[Requirements: *Sun JDK {excerpt-include:_DragonsVersionNumber-JDK|nopanel=true} or higher*. Note that the JRE alone is not enough.

If you do not have the right version of the Java Development Kit (JDK) already installed, follow the steps below to get it.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download the [Sun Java SE Development Kit|http://java.sun.com/javase/downloads/index.jsp].
#* Get the latest version of the JDK 1.6, at least *version 6u23 or later*.
#* If you are running 64-bit Windows, please ensure that you use *32-bit JDK* and not the 'x64' JDK.
# Follow the [Sun installation instructions|http://java.sun.com/javase/6/webnotes/install/index.html].
# Make sure you have a {{JAVA_HOME}} environment variable pointing to the root directory of the JDK. Some JDK installers set this automatically.
#* Check by typing one of the following into a command window, depending on your operating system.
#** On Windows: {{echo %JAVA_HOME%}}
#** On Linux or UNIX: {{echo $JAVA_HOME}}
#* If the above command does not show you the path to your JDK, please refer to the Crowd instructions on [setting JAVA_HOME|CROWD:Setting JAVA_HOME].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912474</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240944974</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows service, so that it starts each time you start Windows, by running {{\{BAMBOO_INSTALL\InstallAsService.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}}. You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add a builder as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Builder Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.2.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.v22.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Plan Name: {{Main}}
#* Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# The 'Plan Summary' for the 'Main' plan in the 'Dragons' will appear. The 'Recent History' has a link to the build result, '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v5.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v5.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*\#1*' in the '*Recent History*' to open the build result summary.
* Click '*Comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+8+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912478</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240944972</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], where you're sure to meet other battle-weary dragon slayers.{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912476</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240944956</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_09.png! 
_You're nearly there. Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *5 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo and Subscribe JIRA to Bamboo Gadgets

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
# Now you will make your Bamboo gadgets available in JIRA, so that JIRA users will be able to add any Bamboo gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Bamboo site (e.g. {{[http://coopers:8085]}} or {{[http://www.foobar.com:8085]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardStage9-v5.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240912456</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200674360</id>
<property name="body"><![CDATA[Beware, all ye who enter, for here there be dragons! This is the starting point for your dragon quest. 

{color:red}PICTURE of dragon here{color}

By the time you reach the end of this journey, you will have an awesome Atlassian integrated development suite. There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h2. Rushing into the Dragon's Lair

Please read the introduction [below|#introduction].

Then you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

* Fun
* A challenge with a prize
* Learning from your input, so that we can make the process better

Setting up an integrated suite of Atlassian applications can give awesome results. But we know that the setup process can be long and difficult. We want to improve it, and we'd like your feedback on how it works for you.

So we have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a t-shirt to prove you did it.

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA] for xxxxxx
* [GreenHopper] for xxxxxx
* [Confluence], the enterprise wiki
* [FishEye] for xxxxxxx
* [Bamboo] for xxxxxxx
* [Crowd] for xxxxxxx

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragonslayer t-shirt] too.  

h6. Getting Help
If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone, but ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragons slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed. 
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described below. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200707363</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">155549712</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[dbutler@atlassian.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-04-25 12:25:02.882</property>
<property name="lastModificationDate">2008-07-10 17:53:43.133</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917388</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons.
{color:red}*Add dragon banner here*{color} 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a Crucible license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*'  from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Connect FishEye to Subversion 

You must already have a Subversion (version 1.2 or later) repository set up to use the instructions on this page. Subversion is freely available at the [Subversion home page|http://subversion.tigris.org].

(i) FishEye supports other repository types -- for details on these visit the full [FishEye documentation|FISHEYE:Adding a Repository].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL -- Enter the URL of your Subversion repository, for example {{[file:///var/svn]}} or {{[svn://svn.foo.com]}}. (We recommend the file protocol, as it performs the fastest.)
#* Path -- For the purposes of this integration exercise, you should restrict FishEye to only look at a particular part of the repository, for example 'trunk'. This ensures that FishEye's initial scan of the repository will be quick. Note that you will want to include your entire repository later.
For example, let's assume you have a structure like the following in your repository: {{project/trunk}}. In that case, you would set the '*path*' variable to the following value: {{project/trunk}}. 
#* Username and Password -- Enter the username and password required to access the Subversion repository. Note that this user account should have _read-only_ access to the repository.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://www.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) {color:red}You can now have your users log in to FishEye using their Crowd accounts and browse your Subversion repository.{color}
* You can see your source in FishEye.  From the dashboard, click the Source tab to start browsing the contents of the repository. 
* Features include:
** Rapid search of your repository contents via the Quick Nav bar.
** See commit activity in your repository via FishEye's RSS feed.

(i) After you complete the Dragons process, you should return to these configuration screens and set FishEye to scan the entire repository.

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 5 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851930</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">201917383</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons].
{color:red}*Add dragon banner here*{color}

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
(i) If you can't see this download file, click the '*Show all*' link above the download buttons, to see all the download file types.
# Unzip the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window.)
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd-ehcache.xml}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the bas URL for your Confluence site (e.g. {{http://coopers:8080}}or{{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a dragon:
#* Right-click on the dragon picture [below|#dragon] and save it to your desktop.
#* Click '*Edit*' at the top right of your new Dragons home page.
#* The wiki rich text editor will open. Select and delete the following text in the editor panel:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the dragon picture that you saved earlier.
#* Click '*Attach*'.
#* The image file name will appear in the 'Filename' textbox.
#* Click '*OK*'.
#* The image will appear in the editor panel of your home page.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your dragon picture and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

{color:red}*TO DO:* Replace this image when we have a nice dragon pic.{color}
{anchor:dragon}
+_Picture: A dragon for your home page_+
\\
\\
!DragonBaby-80px.png!

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a dragon and a dynamically-updated list of JIRA issues.

{color:red}*TO DO:* Replace the image on the Dragons space and then redo this screenshot when we have a nice dragon pic.{color}

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest. My Confluence is now Dragon wise @AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">201851925</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994636</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | {color:red}Suggested text -- need to test it when Dragons is up and running.{color}
Now that you have enabled Crucible, you can start reviewing the code
committed to your repository:
# Go to the activity stream and find a commit.
# Click the small cog on the right-hand side and select '*Create
Review*' from the dropdown menu.
# Select some reviewers.
# Click '*Start Review*'.
\\
\\
{color:red}Alternative text -- but is too low-level.{color}
With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children:style=h4}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961915</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">208994612</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | {color:red}Must check this procedure when I get FE 2.1 into Dragons -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | {color:red}Suggested text -- need to test it when Dragons is up and running.{color}
Now that you have enabled Crucible, you can start reviewing the code
committed to your repository:
# Go to the activity stream and find a commit.
# Click the small cog on the right-hand side and select '*Create
Review*' from the dropdown menu.
# Select some reviewers.
# Click '*Start Review*'.
\\
\\
{color:red}Alternative text -- but is too low-level.{color}
With the Crucible web application, you can:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java, that is, it measures how much
of your java code is executed by your tests. Clover has several
differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test
execution (to make build faster), measures per-test coverage and
produce interactive HTML reports. Clover provides plugins for Eclipse and
IntelliJ IDEA.

| Installation | {color:red}TBD: Must test this procedure again with latest version of Bamboo.Then go thru the steps and the licensing with Nick. (We may even ship an evaluation license with Bamboo.){color} Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below we give the instructions for using Clover within Bamboo. Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Clover license|http://www.atlassian.com/software/clover/pricing.jsp].
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '*Main*', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# Enter your Clover license key into the '*Clover License*' field. 
# Click '*Save*'.
{panel}|
| Overview | With the Clover plugin for Bamboo, you can:
* See the [code coverage for a build|BAMBOO:Viewing the Clover Code-Coverage for a Build Result].
* Use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup:
{children}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">208961888</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675850</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the 'Standalone (ZIP Archive)' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home/}}
(Note the forward slashes.)
#* Save the file.
# Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\apache-tomcat\common\lib}} directory.
# Start your JIRA server by going to the directory where you unzipped JIRA and running {{startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you disable email notifications.
{panel}



# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708960</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675854</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql:$\{catalina.home\}/database/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql:${catalina.home}/database/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by going to the directory where you unzipped JIRA and running {{startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you disable email notifications.
{panel}



# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708964</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675852</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql:${catalina.home}/database/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql:${catalina.home}/database/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
# Start your JIRA server by going to the directory where you unzipped JIRA and running {{startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you disable email notifications.
{panel}



# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708962</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675823</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Download the JIRA 'Standalone Windows Installer' ({{.exe}}) file  for *JIRA 4.0.0*.
# Run the installer {{.exe}} file, entering the following information as prompted:
#* Destination directory -- This is where the JIRA installation files will be stored. JIRA will also write its log files to this directory. The default value is the Windows {{Program Files}} folder. You can change this if necessary, e.g. if you or JIRA will not have permission to update that directory.
#* JIRA home -- This is where JIRA will store its configuration files and other data. The default value is the Windows {{Program Files}} folder. You can change this if necessary, e.g. if you or JIRA will not have permission to update that directory.
#* We recommend that you choose to install JIRA as a service when prompted.
# *De-select* the option to launch JIRA in your browser, because we still have some configuration to perform. {color:red}*TBC -- I actually left the option ticked*{color}
# Click '*Finish*'.
# Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\apache-tomcat\common\lib}} directory. {color:red}*TBC -- I haven't done this yet*{color}
# Start your Crowd server by going to the directory where you unzipped Crowd and running {{start_crowd.bat}}. {color:red}*TBC -- Don't need to do this if auto-started.*{color}
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you disable email notifications.
{panel}



# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708932</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675876</id>
<property name="body"><![CDATA[Congratulations! Stage 12 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy! 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Add a Bamboo Gadget to JIRA
# Add the 'Bamboo Status' gadget to your dashboard

h2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

(/) *The battle is won, the dragon is slain:*
* In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)


{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons].{tip} 

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708986</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675877</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

h2. Step 4. Hook JIRA up to Crowd

Let's hook JIRA up to Crowd for SSO and user management.

# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708987</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675871</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go. 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Configure FishEye Plugin into JIRA

# *FishEye plugin* \- configure the FishEye plugin in JIRA (it's bundled, just needs configuration)


(/) *Victory:*
* You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
## 'Recent Commits' gadget
## 'Charts' gadget


(/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 8 - Configure Crucible]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708981</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675873</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. Take heart, noble dragon slayer, and proceed with a will.

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure the base URL.
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build

(/) *Victory:*
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)


{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest. I own Bamboo! @AtlassianDragons].{tip} 

[Dragons Stage 10 - Install Clover]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708983</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675885</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to Crowd, for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen appears. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen appears. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

h2. Step 4. Hook JIRA up to Crowd

Let's hook JIRA up to Crowd for SSO and centralised user management.

# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


(/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708996</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675856</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql:$\{catalina.home\}/database/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql:${catalina.home}/database/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you disable email notifications.
{panel}



# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708966</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675868</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.
# Admin setup:
## Configure the base URL.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}



h2. Try it Out

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
# configure Confluence to have a base URL

*Victory*...




{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 5 - Install AppLinks]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708978</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">167215196</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Bamboo integration and provides links to more information. Unless otherwise stated, the information here refers to the latest version of the JIRA, Bamboo and the JIRA Bamboo plugin. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Integration JIRA with Bamboo to link JIRA issues to Bamboo builds. Once you have linked JIRA issues to your builds, you can view the linked issues in your Bamboo build results and build plans. You can also view build information in JIRA, via tabs on related issues, versions and projects or on portlets.
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

+_Screenshot: Viewing the JIRA Issues for a Build Result_+
\\
\\
!BAMBOO:3.8 Viewing the JIRA Issues for a Build Result^Bamboo-BuildResults-Issues.png|border=1,bordercolor=gray!

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:BAMBOO:_about Integrating Bamboo with JIRA|nopanel=true}

h2. Components

h6. Type of Integration
{hide}
Give a short description --- is it a plugin, an application, a gadget, or what? For example:
Application Links is a plugin, which you will install and configure in the relevant products.
{hide}
JIRA Bamboo integration is enable by two separate plugins, the *JIRA plugin for Bamboo* and the *JIRA Bamboo plugin* (i.e. Bamboo Plugin for JIRA). These plugins need to be installed and configured in both Bamboo and JIRA, as described in the [JIRA Bamboo integration documentation|BAMBOO:Integrating Bamboo with JIRA].


h6. List of Components
{hide}
Wherever possible, you should include the components from the inclusions library of the integration point's own doc space.
{hide}

You will need the following products to integrate JIRA and Bamboo:
* [JIRA|http://www.atlassian.com/software/jira]
* [Bamboo|http://www.atlassian.com/software/bamboo]
* The [JIRA Bamboo plugin|JIRAEXT:JIRA Bamboo Plugin] — refer to the [Integration Documentation|BAMBOO:Integrating Bamboo with JIRA] for details on how to  set this up.

(i) _Please note, the JIRA Plugin for Bamboo is shipped with Bamboo._

h2. Version Matrix
{hide}
Wherever possible, you should include the version matrix from the inclusions library of the integration point's own doc space.
{hide}

The following matrix provides version compatibility information for the JIRA Bamboo plugin. As the JIRA plugin for Bamboo is bundled with Bamboo, the following matrix should provide you with all the information you need regarding component versions:

{include:JIRAEXT:JIRA Bamboo Plugin Version History|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [JIRA Bamboo integration|BAMBOO:Integrating Bamboo with JIRA] documentation, as well as the [JIRAEXT:JIRA Bamboo Plugin] documentation
{column}
{column:width=40%}
h6. All Versions
There are no previous versions of documentation for this integration point.
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182431</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675867</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 4 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708977</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675870</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons. Take heart, be strong and you will prevail. 

In this stage, you will install [FishEye|] xxxxxxxxx

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# Configure FishEye to use Crowd
# Set up FishEye's JIRA integration -- set up your JIRA servers.
# FishEye Admin Setup:
## Configure FishEye to have a base URL
## Enable the public API


(/) *Victory*
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)
* 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 7 - Get JIRA and FishEye Talking]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708980</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675863</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you disable email notifications.
{panel}



# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708973</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">167215194</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Bamboo integration and provides links to more information. Unless otherwise stated, the information here refers to the latest version of the JIRA, Bamboo and the JIRA Bamboo plugin. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Integration JIRA with Bamboo to link JIRA issues to Bamboo builds. Once you have linked JIRA issues to your builds, you can view the linked issues in your Bamboo build results and build plans. You can also view build information in JIRA, via tabs on related issues, versions and projects or on portlets.
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

+_Screenshot: Viewing the JIRA Issues for a Build Result_+
\\
\\
!BAMBOO:3.8 Viewing the JIRA Issues for a Build Result^Bamboo-BuildResults-Issues.png|border=1,bordercolor=gray!

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:BAMBOO:_about Integrating Bamboo with JIRA|nopanel=true}

h2. Components

h6. Type of Integration
{hide}
Give a short description --- is it a plugin, an application, a gadget, or what? For example:
Application Links is a plugin, which you will install and configure in the relevant products.
{hide}
JIRA Bamboo integration is enable by two separate plugins, the *JIRA plugin for Bamboo* and the *JIRA Bamboo plugin* (i.e. Bamboo Plugin for JIRA). These plugins need to be installed and configured in both Bamboo and JIRA, as described in the integration documentation ([linked below|#documentation]).


h6. List of Components
{hide}
Wherever possible, you should include the components from the inclusions library of the integration point's own doc space.
{hide}

You will need the following products to integrate JIRA and Bamboo:
* [JIRA|http://www.atlassian.com/software/jira]
* [Bamboo|http://www.atlassian.com/software/bamboo]
* The [JIRA Bamboo plugin|JIRAEXT:JIRA Bamboo Plugin] — refer to the [Integration Documentation|Integrating Bamboo with JIRA] for details on setting this up.

(i) _Please note, the JIRA Plugin for Bamboo is shipped with Bamboo._

h2. Version Matrix
{hide}
Wherever possible, you should include the version matrix from the inclusions library of the integration point's own doc space.
{hide}

The following matrix provides version compatibility information for the JIRA Bamboo plugin. As the JIRA plugin for Bamboo is bundled with Bamboo, the following matrix should provide you with all the information you need regarding component versions:

{include:JIRA Bamboo Plugin Version History|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [BAMBOO:Integrating Bamboo with JIRA] documentation, as well as the [JIRAEXT:JIRA Bamboo Plugin] documentation
{column}
{column:width=40%}
h6. All Versions
There are no previous versions of documentation for this integration point.
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167182429</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">168624602</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">50</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[bob.swift@lakeviewtech.com]]></property>
<property name="creationDate">2008-09-24 08:18:18.229</property>
<property name="lastModificationDate">2008-09-24 08:18:18.229</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426374</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393705</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426369</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393700</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426376</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.5*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393707</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426355</id>
<property name="body"><![CDATA[Requirements: *Sun JDK 1.5 or higher*. Note that the JRE alone is not enough.

If you don't have the right version of the Java Development Kit (JDK) already installed, follow the steps below to get it.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download the [Sun Java SE Development Kit|http://java.sun.com/javase/downloads/index.jsp] -- Get the latest JDK 6.
# Follow the [Sun installation instructions|http://java.sun.com/javase/6/webnotes/install/index.html].
# Make sure you have a {{JAVA_HOME}} environment variable pointing to the root directory of the JDK. Some JDK installers set this automatically.
#* Check by typing one of the following into a command window, depending on your operating system.
#** On Windows: {{echo %JAVA_HOME%}}
#** On Linux or UNIX: {{echo $JAVA_HOME}}
#* If the above command does not show you the path to your JDK, please refer to the Crowd instructions on [setting JAVA_HOME|CROWD:Setting JAVA_HOME].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393687</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426351</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393683</id>
</property>
</object>
<object class="ContentPermission" package="com.atlassian.confluence.security">
<id name="id">228229132</id>
<property name="type"><![CDATA[Edit]]></property>
<property name="userName"/><property name="groupName"><![CDATA[documentation]]></property>
<property name="owningSet" class="ContentPermissionSet" package="com.atlassian.confluence.security"><id name="id">228261899</id>
</property>
<property name="creatorName"><![CDATA[alui]]></property>
<property name="creationDate">2010-12-09 22:34:19.599</property>
<property name="lastModifierName"><![CDATA[alui]]></property>
<property name="lastModificationDate">2010-12-09 22:34:19.599</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426352</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393684</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426361</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your SwordC and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393692</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215516510</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.2*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4.2-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox, to enable Gzip compression.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215483952</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426400</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393732</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675942</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen appears. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen appears. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

h2. Step 4. Hook JIRA up to Crowd

Let's hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{172.20.5.160}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.



{panel}


Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 














(/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709053</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426397</id>
<property name="body"><![CDATA[Requirements: *PostgreSQL version 8.3.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download [PostgreSQL|http://www.postgresql.org/download/] -- Get the latest 8.3.x. For the simplest installation, choose one of the one-click installers.
# Install PostgreSQL. If you chose one of the PostgreSQL one-click installers, this is simple: Run the executable that you downloaded and follow the prompts. If necessary, you can refer to the [PostgreSQL installation instructions|http://www.enterprisedb.com/learning/pginst_guide.do]. 
# Enter a password for the super user ('postgres').
# Accept the default port {{5432}}.
# Accept all the other default settings.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393729</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426387</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* Click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. Click the issue key to open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393718</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675981</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Let's hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Issues in JIRA

# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709093</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">170721288</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">143032322</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[jsc]]></property>
<property name="creationDate">2008-10-30 15:26:07.850</property>
<property name="lastModificationDate">2008-10-30 15:26:07.850</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675964</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Let's hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '{{ON}}*' radio buttons for '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}


Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 














(/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709076</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426418</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393751</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426420</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393753</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675984</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/crowd-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/crowd-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Let's hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Issues in JIRA

# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709096</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">233181064</id>
<property name="body"><![CDATA[{excerpt}During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: *Charlie of Atlassian*. Very soon you will want to add more users, and in particular users who are not administrators. We recommend that you use Crowd for all user and group management. Below is a suggested plan of action and a hint about what to do if new users experience a delay before they can see their JIRA projects.{excerpt}

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">233148661</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">226889317</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}. 
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.4.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.v22.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791404</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">226889316</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}. 
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.4.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">226791403</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168560109</id>
<property name="body"><![CDATA[{color:red}This page is DRAFT visible to *Atlassian staff only*. It will be published after review.{color}

{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level of 'critical', 'high', 'moderate' or 'low'. Below is a summary of the factors which we use to decide on the severity level and the implications for your installation. We have also included a recommendation on the time period within which you should apply the patch or upgrade. Please adjust these response times according to your internal procedures and the level of deployment of the affected product at your organisation.

h6. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* The vulnerability typically affects default installations of very widely deployed software.
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

Maximum recommended response time: 48 hours

h6. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

Maximum recommended response time: 5 business days

h6. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

Maximum recommended response time: 15 business days

h6. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

Maximum recommended response time: At the administrator's discretion

{info:title=Original ranking compiled by the SANS Institute}
Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/]. The relevant page is no longer available, but you can find an archived version on the [Wayback Machine|http://web.archive.org/web/20080105015855/http://www.sans.org/newsletters/cva/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461911</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">181733101</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">2090</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[david.soul@atlassian.com]]></property>
<property name="creationDate">2009-03-15 22:44:53.894</property>
<property name="lastModificationDate">2009-03-15 22:44:53.894</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168560106</id>
<property name="body"><![CDATA[{color:red}This page is DRAFT visible to *Atlassian staff only*. It will be published after review.{color}

{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level of 'critical', 'high', 'moderate' or 'low'. Below is a summary of the factors which we use to decide on the severity level and the implications for your installation. We have also included a recommendation on the time period within which you should apply the patch or upgrade. Please adjust these response times according to your internal procedures and the level of deployment of the affected product at your organisation.

h6. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* The vulnerability typically affects default installations of very widely deployed software.
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

Maximum recommended response time: 48 hours

h6. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

Maximum recommended response time: 5 business days

h6. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

Maximum recommended response time: 15 business days

h6. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

Maximum recommended response time: At the administrator's discretion

{info:title=Original ranking compiled by the SANS Institute}
Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/]. The relevant page is no longer available, but you can find an archived version on the [Wayback Machine|http://web.archive.org/web/20080105015855/http://www.sans.org/newsletters/cva/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461908</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240224858</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], where you're sure to meet other battle-weary dragon slayers.{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Fatlss.in%2Fdragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240192327</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">240224857</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows service, so that it starts each time you start Windows, by running {{\{BAMBOO_INSTALL\InstallAsService.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}}. You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add a builder as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Builder Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.2.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.v22.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Plan Name: {{Main}}
#* Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# The 'Plan Summary' for the 'Main' plan in the 'Dragons' will appear. The 'Recent History' has a link to the build result, '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v5.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v5.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*\#1*' in the '*Recent History*' to open the build result summary.
* Click '*Comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+8+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">240192326</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">193823484</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover APIs|CLOVER:] --- please search for 'API' to find the relevant pages
* [Atlassian IDE Plugin for Eclipse|IDEPLUGIN:Atlassian Eclipse Connector] --- see links on home page
* [Atlassian IDE Plugin for IDEA|IDEPLUGIN:Atlassian IntelliJ Connector] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">193790768</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">228655395</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The '*Link to another server -- Step 1*' dialogue will appear. Enter the following information:
#* Server URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
# Click '*Next*'.
# The '*Link to another server -- Step 2*' dialogue will appear. Enter the following information:
#* Application Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* Application Name: {color:blue}*{{JIRA}}*{color}.
# Click '*Create*'. The 'Configure Application Links' page will display the new application link to your JIRA server.
# Now you will configure authentication for the application link. Click '*Configure*' next to your new application link.
# The '*Configure Dragons JIRA*' screen will appear. Click '*Incoming Authentication*' in the left-hand menu.
# The outgoing authentication page will appear with the '*Trusted Applications*' tab active. Click '*Configure*' then '*Apply*' to enable trusted applications for incoming authentication.
# Do the same for incoming authentication. Click '*Close*' when done.
# Click '*JIRA Settings*' next to your '*Dragons JIRA*' application link
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox and click '*Save*'. 
# Now you will set up an entity link from your FishEye repository to your JIRA project, to enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. 
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'. 
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and click '*Application Links*' from the menu that appears.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' then click '*Dragons JIRA (JIRA)*' from the dropdown menu.
# The 'Enter link details' screen will appear. Enter the following details:
#* Key: {{{color:blue}*DRA*{color}}}
#* Alias: {{{color:blue}*Dragons*{color}}}
# Click '*Create*'. 
# Click the '*Server*' link in the left-hand menu under 'Global Settings'. 
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel under 'System'.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
#* URL Paths to Allow: Add these paths to the existing paths, one per line:
#** {{/plugins/servlet/applinks/whoami}}
#** {{/secure/CreateSubTaskIssueDetails.jspa}}
#** {{/browse}}
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">228622668</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168560117</id>
<property name="body"><![CDATA[{color:red}This page is DRAFT visible to *Atlassian staff only*. It will be published after review.{color}

{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level of 'critical', 'high', 'moderate' or 'low'. Below is a summary of the factors which we use to decide on the severity level, and the implications for your installation. We have also included a recommendation on the time period within which you should apply the patch or upgrade. Please adjust these response times according to your internal procedures and the level of deployment of the affected product at your organisation.

h6. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

Maximum recommended response time: 48 hours

h6. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

Maximum recommended response time: 5 business days

h6. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

Maximum recommended response time: 15 business days

h6. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

Maximum recommended response time: At the administrator's discretion

{info:title=Original ranking compiled by the SANS Institute}
Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/]. The relevant page is no longer available, but you can find an archived version on the [Wayback Machine|http://web.archive.org/web/20080105015855/http://www.sans.org/newsletters/cva/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461919</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168560111</id>
<property name="body"><![CDATA[{color:red}This page is DRAFT visible to *Atlassian staff only*. It will be published after review.{color}

{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level of 'critical', 'high', 'moderate' or 'low'. Below is a summary of the factors which we use to decide on the severity level, and the implications for your installation. We have also included a recommendation on the time period within which you should apply the patch or upgrade. Please adjust these response times according to your internal procedures and the level of deployment of the affected product at your organisation.

h6. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* The vulnerability typically affects default installations of very widely deployed software.
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

Maximum recommended response time: 48 hours

h6. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

Maximum recommended response time: 5 business days

h6. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

Maximum recommended response time: 15 business days

h6. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

Maximum recommended response time: At the administrator's discretion

{info:title=Original ranking compiled by the SANS Institute}
Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/]. The relevant page is no longer available, but you can find an archived version on the [Wayback Machine|http://web.archive.org/web/20080105015855/http://www.sans.org/newsletters/cva/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461913</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618238</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585504</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618233</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will create a wiki space and add a dynamic list of JIRA issues to a wiki page. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1* or *3.0.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.2*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585498</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618230</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to add a JIRA issue, edit and move JIRA issues through the workflow stages via the GreenHopper Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. 

First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, then add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585495</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618254</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{excerpt}During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: *Charlie of Atlassian*. Very soon you will want to add more users, and in particular users who are not administrators. We recommend that you use Crowd for all user and group management. Below is a suggested plan of action and a hint about what to do if new users experience a delay before they can see their JIRA projects.{excerpt}

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning New Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585520</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">216465473</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that displays.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 7 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 7 gadgets_+
\\
\\
!JIRADashboardStage8.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">216432739</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">193823543</id>
<property name="body"><![CDATA[This page introduces the Atlassian Eclipse Connector and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian Eclipse Connector displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your [Eclipse|http://www.eclipse.org/] development environment. 
{excerpt}

+_Screenshot: Bamboo Watched Plans and Build Log in Eclipse_+
\\
\\
!IDEPLUGIN:_Flagship Image for Eclipse Bamboo^EclipseBuildLog.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for Eclipse|nopanel=true}

h2. Components

The Atlassian Eclipse Connector is a plugin, which you will install and configure in [Eclipse|http://www.eclipse.org/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for Eclipse Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian Eclipse Connector documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:Atlassian Eclipse Connector|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">193790828</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618248</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

(i) If you wish to use Maven 2 and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading this JAR separately.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585514</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618250</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585516</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">233181164</id>
<property name="body"><![CDATA[Requirements: *Sun JDK {excerpt-include:_DragonsVersionNumber-JDK|nopanel=true} or higher*. Note that the JRE alone is not enough.

If you do not have the right version of the Java Development Kit (JDK) already installed, follow the steps below to get it.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download the [Sun Java SE Development Kit|http://java.sun.com/javase/downloads/index.jsp] -- Get the JDK 6u17. Do not get JDK 6u18 or later, as it contain a serious bug [that affects Confluence performance|CONFKB:Fatal JVM Crash - 'java.lang.OutOfMemoryError .. Out of Swap Space?'].
# Follow the [Sun installation instructions|http://java.sun.com/javase/6/webnotes/install/index.html].
# Make sure you have a {{JAVA_HOME}} environment variable pointing to the root directory of the JDK. Some JDK installers set this automatically.
#* Check by typing one of the following into a command window, depending on your operating system.
#** On Windows: {{echo %JAVA_HOME%}}
#** On Linux or UNIX: {{echo $JAVA_HOME}}
#* If the above command does not show you the path to your JDK, please refer to the Crowd instructions on [setting JAVA_HOME|CROWD:Setting JAVA_HOME].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">233148817</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618240</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.5*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585506</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618242</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) You can also click through from FishEye to JIRA, by clicking the issue key. Try it by clicking '{color:blue}*DRA-1*{color}' in your FishEye view.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585508</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168560147</id>
<property name="body"><![CDATA[{color:red}This page is DRAFT visible to *Atlassian staff only*. It will be published after review.{color}

{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level, rating the vulnerability as one of the following:
* Critical
* High
* Moderate
* Low

Below is a summary of the factors which we use to decide on the severity level, and the implications for your installation. We have also included a recommendation on the time period within which you should apply the patch or upgrade. Please adjust these response times according to your internal procedures and the level of deployment of the affected product at your organisation.

h6. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

Maximum recommended response time: 48 hours

h6. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

Maximum recommended response time: 5 business days

h6. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

Maximum recommended response time: 15 business days

h6. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

Maximum recommended response time: At the administrator's discretion

{info:title=Original ranking compiled by the SANS Institute}
Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/]. The relevant page is no longer available, but you can find an archived version on the [Wayback Machine|http://web.archive.org/web/20080105015855/http://www.sans.org/newsletters/cva/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168461950</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">233181168</id>
<property name="body"><![CDATA[Requirements: *Sun JDK {excerpt-include:_DragonsVersionNumber-JDK|nopanel=true} or higher*. Note that the JRE alone is not enough.

If you do not have the right version of the Java Development Kit (JDK) already installed, follow the steps below to get it.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download the [Sun Java SE Development Kit|http://java.sun.com/javase/downloads/index.jsp] -- Get the latest version of the JDK, at least *version 6u23 or later*.
# Follow the [Sun installation instructions|http://java.sun.com/javase/6/webnotes/install/index.html].
# Make sure you have a {{JAVA_HOME}} environment variable pointing to the root directory of the JDK. Some JDK installers set this automatically.
#* Check by typing one of the following into a command window, depending on your operating system.
#** On Windows: {{echo %JAVA_HOME%}}
#** On Linux or UNIX: {{echo $JAVA_HOME}}
#* If the above command does not show you the path to your JDK, please refer to the Crowd instructions on [setting JAVA_HOME|CROWD:Setting JAVA_HOME].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">233148821</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304194</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.5.5*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.5.5*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.5.5-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows by running {{\{BAMBOO_INSTALL\InstallAsService.bat}} If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}} You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.5.5*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment] (note, you do not need to configure an IDE). The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar and log in with username charlie and the password you specified when prompted.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see an '*All local agents*' link in the '*Agents*' column for '*Maven 2*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.0.6\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.0.6/apache-maven}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.4.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository -- Select '*FishEye*'.
#** FishEye URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://foobar:8060/]}} or {{[http://fisheye.foobar.com:8060/]}}.
#** Repository Name --- {{Dragons}}
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271832</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304192</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.2.3*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.2.3*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.2.3*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye Admin screens in your FishEye browser window/tab.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271830</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238650231</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *40 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then select '*Administration*' from the dropdown menu
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS Feed*'.

(/) Click the changeset number ({{153936}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238617579</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304190</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.4.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271828</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618258</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite: [Crucible|http://www.atlassian.com/software/crucible/] for code review and [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

[Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations.

| Installation | Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. Just add your license key and give {color:blue}*Charlie*{color} permission to use Crucible:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to open the FishEye Admin screens.
# Enter your FishEye administration password, if prompted. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field.
If you do not already have a Crucible license, you can obtain a free [evaluation license|http://my.atlassian.com].
# Click '*Update*'. The logo and heading at top left of your screen will now include the Crucible branding.
# Click '*Users*' in the left-hand panel.
# The 'User browser' will appear. Note that there is an asterisk '\*' next to username '{color:blue}*charlie*{color}', meaning that Charlie does not have permission to use Crucible.
# Click '*Edit*' next to Charlie's name.
# The 'User Details' screen will appear. Select the '*Active Crucible user*' checkbox.
# Click '*Apply*'.
{panel}|
| Overview | Now that you have enabled Crucible, you can start reviewing the code committed to your repository:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the FishEye+Crucible logo at top left to go to the dashboard. Make sure you have the '*All Activity*' tab open on the dashboard and can see the two commits. 
# Click the downward-pointing arrow next to the cog icon !FishEyeCogIcon.png! at the right-hand side of the screen next to '*committed 2 to Dragons*'.
# A drop-down menu will appear. Select '*Create Review*'.
# The 'Edit Review CR-1' screen will appear.
# Now you need some people to review the code:
#* If you have already added more users to Crowd, you can select them as reviewers. Start typing a name into the '*Reviewers* text box. Crucible will offer a list of matching names for you to select from.
#* If you have already [set up a mail server in FishEye|FISHEYE:Configuring SMTP], you can enter an email address in the '*Invite Reviewers*' text box and click '*Invite*'. The person will receive an email message inviting them to join the review. They will need a Crowd username before they can start.
#* Otherwise, for the purposes of this exercise, you can continue with no reviewers.
# Leave the other fields at their default values and click '*Start Review*'.
# If you see a warning that the review has no reviewers, click '*Confirm*'.
# The review details appear for your new Crucibe review '{color:blue}*CR-1*{color}'. Please refer to the Crucible documentation on:
#* [Performing a review|CRUCIBLE:Performing the Review] that has been assigned to you.
#* [Adding files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
#* [Managing the review workflow|CRUCIBLE:Summarising and Closing the Review].
#* [Integrating your reviews with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp].
{panel}
_+Screenshot 1 (click to enlarge): A Crucible review+_
\\
\\
!CrucibleReview.png|thumbnail! |
| Screenshots and tours| There are many different ways to use Crucible. See the [documentation|CRUCIBLE:] and the [website|http://www.atlassian.com/software/crucible/] for inspiration. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. With the connector, you can perform pre-commit reviews as well as post-commit and patch reviews. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '{color:blue}*Main*{color}', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585524</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618255</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{excerpt}If you experience problems with running Bamboo as a Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.{excerpt}

h5. RELATED TOPICS

[Dragons Stage 7 - Install Bamboo]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585521</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618261</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585528</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">233181373</id>
<property name="body"><![CDATA[# Turn on the public API and allow unassigned issues:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">233149079</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675695</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Download the JIRA 'Standalone Windows Installer' ({{.exe}}) file  for *JIRA 4.0.0*.
# Run the installer {{.exe}} file, entering the following information as prompted:
#* Destination directory -- This is where the JIRA installation files will be stored. JIRA will also write its log files to this directory. The default value is the Windows {{Program Files}} folder. You can change this if necessary, e.g. if you or JIRA will not have permission to update that directory.
#* JIRA home -- This is where JIRA will store its configuration files and other data. The default value is the Windows {{Program Files}} folder. You can change this if necessary, e.g. if you or JIRA will not have permission to update that directory.
#* We recommend that you choose to install JIRA as a service when prompted.
# *De-select* the option to launch JIRA in your browser, because we still have some configuration to perform. {color:red}*TBC -- I actually left the option ticked*{color}
# Click '*Finish*'.
# Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\apache-tomcat\common\lib}} directory. {color:red}*TBC -- I haven't done this yet*{color}
# Start your Crowd server by going to the directory where you unzipped Crowd and running {{start_crowd.bat}}. {color:red}*TBC -- Don't need to do this if auto-started.*{color}
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you disable email notifications.




# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708774</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618266</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585534</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238650204</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Add a JIRA-FishEye Application Link 

In this step you will link your JIRA and FishEye servers by creating an application link.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye Admin screen.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your FishEye site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'. The application link will be created and displayed on the 'Configure Application Links' page.
# Click '*Configure*' next to the '*Your Company JIRA*' application link.
# Change the '*Application Name*' to {{Dragons JIRA}} and click '*Update*'.
# Click '*JIRA Settings*' next to the '*Dragons JIRA*' application link.
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox.
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Adding JIRA as a trusted application in FishEye{+}_ 

!FishEyeCrucibleAppLinks.png|thumbnail!

h2. Step 2. Link a FishEye Repository to a JIRA Project and Subscribe JIRA to FishEye Gadgets

In this step you will link your FishEye repository to your JIRA project via a project link. This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and select '*Application Links*' from the dropdown menu.
# Click '*Add Link*' then select '*Dragons JIRA (JIRA)*' from the dropdown menu.
# Click '*Create*'. Your FishEye repository is now linked to your JIRA project.
# Now you will make your FishEye gadgets available in JIRA, so that JIRA users will be able to add any FishEye gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060]}} or {{[http://www.foobar.com:8060]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The JIRA FishEye configuration screen will appear. Click '*Edit Primary Configuration*' at the bottom of the screen.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link. If prompted, log in to FishEye.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses of your FishEye/Crucible site, separated by commas. For example: 127.0.0.1, 172.20.5.95.
You can find the IP addresses of your FishEye/Crucible site by viewing the 'Remote Addresses' tab for the FishEye application in Crowd.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left-hand menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses of your JIRA site, one per line. For example: 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths, one per line: 
#** {{/plugins/servlet/streams}}
#** {{/sr/jira.issueviews:searchrequest}}
#** {{/secure/RunPortlet}}
#** {{/rest}}
#** {{/rpc/soap}}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.


Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238617552</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304167</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.3.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271805</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304168</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.3.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link into your clipboard.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of three issues, one fixed and two unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your three issues, {color:blue}*{{DRA-1}}*{color}, {color:blue}*{{DRA-2}}*{color} and {color:blue}*{{DRA-3}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same three issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271806</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304171</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.2.1*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.2.1*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.2.1*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye Admin screens in your FishEye browser window/tab.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271809</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238650202</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows service, so that it starts each time you start Windows, by running {{\{BAMBOO_INSTALL\InstallAsService.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}}. You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add a builder as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Builder Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Sun JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.2.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.v22.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# When the build has finished, the 'Plan Summary' for the 'Main' plan in the 'Dragons' will be displayed. The 'Recent History' will have a link to build result, '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v5.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v5.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*\#1*' in the '*Recent History*' to open the build result summary.
* Click '*Comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+8+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238617550</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304174</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.5.3*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.5.3*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.5.3-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows by running {{\{BAMBOO_INSTALL\InstallAsService.bat}} If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}} You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.5.3*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment] (note, you do not need to configure an IDE). The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar and log in with username charlie and the password you specified when prompted.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see an '*All local agents*' link in the '*Agents*' column for '*Maven 2*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.0.6\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.0.6/apache-maven}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.3.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository -- Select '*FishEye*'.
#** FishEye URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://foobar:8060/]}} or {{[http://fisheye.foobar.com:8060/]}}.
#** Repository Name --- {{Dragons}}
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271812</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209618272</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 7 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 7 gadgets_+
\\
\\
!JIRADashboardStage8.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209585540</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238650207</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_09.png! 
_You're nearly there. Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo and Subscribe JIRA to Bamboo Gadgets

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
# Now you will make your Bamboo gadgets available in JIRA, so that JIRA users will be able to add any Bamboo gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Bamboo site (e.g. {{[http://coopers:8085]}} or {{[http://www.foobar.com:8085]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Bamboo gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardStage9-v5.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238617555</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093959</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}

{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211061312</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238650209</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *40 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecruclbie}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then select '*Administration*' from the dropdown menu
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS Feed*'.

(/) Click the changeset number ({{153936}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238617557</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093955</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}

{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211061308</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093957</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211061310</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">232588525</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding Another Atlassian Tool to your Suite

This section tells you about another Atlassian developer tool that you can add to your integrated suite, [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '{color:blue}*Main*{color}', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">232555876</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093954</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211061307</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">221512065</id>
<property name="body"><![CDATA[Deploying multiple Atlassian applications in a single Tomcat container is *not supported*. We do not test this configuration and upgrading any of the applications (even for point releases) is likely to break it. There are also a number of known issues with this configuration:
* You may not be able to start up all of the applications in the container, due to class conflicts that result from the Atlassian applications sharing a single JVM in the Tomcat container.
* You will not be able to determine the startup order of the applications. Hence, you may experience problems such as JIRA starting before Crowd, rather than vice versa.
* Memory problems are also common as one application may allocate all of the memory in the Tomcat JVM to itself, starving the other applications.

We also recommend that you do not deploy multiple Atlassian applications in a single Tomcat container for a number of practical reasons:
* You will need to shut down Tomcat to upgrade any application.
* If one application crashes, the other applications running in the Tomcat container will be inaccessible.
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">221446731</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213090793</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:Gadget Development Hub]
* [REST APIs|DEVNET:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|CONFDEV:Confluence Developer Documentation]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:Crowd Developer Documentation]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213058111</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304107</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.1.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.1.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* --- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* --- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* --- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* --- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* --- Enter the password you chose in step 1 [above|#database].
#** *Schema* --- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'. 
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.1.0*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.sh}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* --- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* --- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* --- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* --- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* --- Enter the password you chose in step 1 [above|#database].
#** *Schema* --- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'. 
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271735</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">218304109</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.4 for JIRA 4.1.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.4 for JIRA 4.1*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*License Details*' in the left-hand panel (in the 'GreenHopper' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to add a JIRA issue, edit and move JIRA issues through the workflow stages via the GreenHopper Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. 

First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, then add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon (a pencil icon that appears on mouseover) next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Select '*Close Issue*' and leave all other values at their defaults. Click '*Update*'.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardUpdated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Use the 'Scrum' Template for your Project and Add a Story

GreenHopper includes a 'Scrum' project template for projects using the 'Scrum' methodology. This template adds custom fields like ranking fields, story points, etc, to your project. It also allows you to create stories, epics and technical tasks. You will now apply this template to your project and create a story.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the '*Tools*' menu on the planning board and click '*Configuration*'. 
# The project configuration page will appear. Select '*Scrum*' from the '*Project Template*' dropdown menu (in the 'Project Templates' section).
# Click '*Change template*' on the confirmation window. The 'Scrum' project template will be applied.
# Next, you will create a new story. Go back to your planning board and click '*New Card*'. Enter the following values:
#* Card type: {{Story}}
#* Priority: {{Major}}
#* Summary: {{As a Dragon Slayer, I would like to be able to wield an extremely big sword.}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Business Value: {{10}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
#* Story Points: {{10}}
# Click '*Create and Close*', to create the story. You will see your planning board again with your story displayed.
{panel}

+_Screenshot 3 (click to enlarge): The GreenHopper planning board with story_+
\\
\\
!GreenHopperPlanningBoardStory.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 4. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select Select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legend*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">218271737</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">213090773</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:Gadget Development Hub]
* [REST APIs|DEVNET:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|CONFDEV:Confluence Developer Documentation]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:Crowd Development Hub]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">213058091</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">193495282</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">979</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[colinho]]></property>
<property name="creationDate">2009-06-15 14:52:23.819</property>
<property name="lastModificationDate">2009-06-15 14:52:23.819</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384314</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 4 - Install FishEye and Crucible]
* [Dragons Stage 5 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351618</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384316</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Configure your JIRA Settings in FishEye/Crucible 

During the FishEye setup wizard, you connected JIRA to FishEye/Crucible. Now you will update that application link and enable subtasks for Crucible. This is required for creating JIRA issues from Crucible reviews. You will also enable the remote API in FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/fisheye}}.
# Click the downward-pointing arrow next to your username ('charlie') then click '*Administration*' in the dropdown menu.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear, showing a connection to your JIRA server. Click '*JIRA Settings*' next to the JIRA application link.
# The 'Update JIRA Server' screen will appear. Enter the following information:
#* Select the '*Include in Activity Streams*' checkbox.
#* Click the '*Test*' button in the 'Subtask Settings' section. The options 'Subtask Settings' section will change, allowing you to complete the following fields.
#* Select the '*Subtask Type*': {{Technical task}}.
#* Enter the '*Subtask Resolution Action ID*': {{2}}.
#* Leave the '*Subtask Resolution*' at its default value: {{Cannot Reproduce}}.
#* Select '*Allow Unassigned*': {{Yes}}. 
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Application link to JIRA in FishEye{+}_ 

!FishEyeCrucibleAppLinks-v6.png|thumbnail!

h2. Step 2. Link your FishEye and JIRA Projects and Subscribe JIRA to FishEye's Gadgets

In this step you will link your FishEye 'Dragons' repository to your JIRA 'Dragons' project via a project link. This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/fisheye}}.
# Click the downward-pointing arrow next to your username ('charlie') then click '*Administration*' in the dropdown menu.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and select '*Application Links*' from the dropdown menu.
# Click '*Add Link*' and select your JIRA server from the dropdown menu.
# Click '*Create*'. Your FishEye repository is now linked to your JIRA project.
# Now you will make your FishEye gadgets available in JIRA, so that users will be able to add any FishEye gadget to their JIRA dashboard. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060/fisheye]}} or {{[http://www.foobar.com:8060/fisheye]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The JIRA FishEye configuration screen will appear. Click '*Edit Primary Configuration*' at the bottom of the screen.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link. If prompted, log in to FishEye as {{charlie}}.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses of your FishEye/Crucible site, separated by commas. For example: 127.0.0.1, 172.20.5.95.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left-hand menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses of your JIRA site, one per line. For example: 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths, one per line: 
{noformat}
/secure/CreateSubTaskIssueDetails.jspa
/browse/
/rest
/plugins/servlet/applinks/whoami
/plugins/servlet/streams
/rpc/soap
/sr/jira.issueviews:searchrequest
/secure/RunPortlet
{noformat}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab-v6.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab-v6.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number or the repository name ('Dragons').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Recent Changesets' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'recent' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Recent Changesets*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Recent Changesets*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Leave all the other fields at their default values and click '*Save*'.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Recent Changesets' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardFishEye-v6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=The dragon is swift and strong but so am I. Completed stage 5 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and Crucible Talking|Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351620</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384318</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Subtasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable subtasks for Crucible. This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will reload and the 'Subtask Settings' section will display different fields. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with subtasks configured+_ 

!CrucibleJIRASettingsSubtasks-v5.png|thumbnail!


Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and select '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' on the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right-hand panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, meaning the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it. You will create a JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen Issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible dashboard and click the '*Activity*' tab.
# Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# Click '*This comment does not mention dragons*' in the '*Latest Comment*' column on the review details screen.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Click '*Assign to Me*'.
# Click '*Create*'. The key of your new issue (DRA-4) will be displayed in the review comment, with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will open in JIRA.
# Click your browser's back button to see your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will open in JIRA with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Out of the Crucible. Completed stage 7 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351622</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384303</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 4 - Install FishEye and Crucible]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351607</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384310</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Add a JIRA-FishEye Application Link 

In this step you will link your JIRA and FishEye servers by creating an application link.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye Admin screen.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your FishEye site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'. The application link will be created and displayed on the 'Configure Application Links' page.
# Click '*Configure*' next to the '*Your Company JIRA*' application link.
# Change the '*Application Name*' to {{Dragons JIRA}} and click '*Update*'.
# Click '*JIRA Settings*' next to the '*Dragons JIRA*' application link.
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox.
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Adding JIRA as a trusted application in FishEye{+}_ 

!FishEyeCrucibleAppLinks.png|thumbnail!

h2. Step 2. Link a FishEye Repository to a JIRA Project and Subscribe JIRA to FishEye Gadgets

In this step you will link your FishEye repository to your JIRA project via a project link. This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye Admin screen.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and select '*Application Links*' from the dropdown menu.
# Click '*Add Link*' then select '*Dragons JIRA (JIRA)*' from the dropdown menu.
# Click '*Create*'. Your FishEye repository is now linked to your JIRA project.
# Now you will make your FishEye gadgets available in JIRA, so that JIRA users will be able to add any FishEye gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060]}} or {{[http://www.foobar.com:8060]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}

h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The JIRA FishEye configuration screen will appear. Click '*Edit Primary Configuration*' at the bottom of the screen.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link. If prompted, log in to FishEye.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses of your FishEye/Crucible site, separated by commas. For example: 127.0.0.1, 172.20.5.95.
You can find the IP addresses of your FishEye/Crucible site by viewing the 'Remote Addresses' tab for the FishEye application in Crowd.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left-hand menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses of your JIRA site, one per line. For example: 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths, one per line: 
#** {{/plugins/servlet/streams}}
#** {{/sr/jira.issueviews:searchrequest}}
#** {{/secure/RunPortlet}}
#** {{/rest}}
#** {{/rpc/soap}}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.


Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=The dragon is swift and strong but so am I. Completed stage 6 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351614</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384328</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._ 

In this stage you will add a Crucible project and connect it to your JIRA project. Then you will create a review, add a comment to the review and create a JIRA issue from that review comment. To consolidate your victory, you will add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

In this step you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/fisheye}}.
# Click the downward-pointing arrow next to your username ('charlie') then click '*Administration*' in the dropdown menu.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and select your JIRA server in the dropdown menu.
# Click '*Create*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible Dragons project linked to JIRA Dragons project+_ 

!CrucibleJIRAProjectEntityLink-v6.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and add a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Find changeset '0:922fd9308885', the first changeset in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the dropdown menu.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' on the warning screen. The 'DRA-1' review screen will appear.
# Click '*App.java*' under 'src' in the file tree on the left. The code for this file will appear in the right-hand panel.
# Scroll down to line 11 in the code and click the '*11*'. 
# A text area will open for you to enter a comment. Add a comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Select the '*Defect*' checkbox.
# Click '*Post*'. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Go to JIRA and open your 'DRA-1' issue. Click the 'Reviews' tab. The tab shows the reviews related to the issue, meaning the reviews involving changesets related to the issue.


+_Screenshot 2 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab-v6.png|thumbnail!


h2. Step 3. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it. You will create a JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to JIRA and view your '*DRA-1*' issue.
# Click '*Reopen issue*'.
# The 'Reopen Issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible dashboard.
# Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# The review details screen will appear. Click '*This comment does not mention dragons*' in the '*Latest Comment*' column.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Click '*Assign to Me*'.
# Click '*Create*'. The key of your new issue (DRA-5) will be displayed in the review comment, with a status of 'Open'. 
# Click the issue key, '*DRA-5*'. The issue will open in JIRA.
# Click your browser's back button to see your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-5*'. The issue will open in JIRA with a status of 'Closed'.
{panel}

+_Screenshot 3 (click to enlarge): Closed JIRA issue displayed in a review comment_+

!CrucibleReviewCommentJIRAIssue-v6.png|thumbnail!


h2. Step 4. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Recent Changesets' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Out of the Crucible. Completed stage 6 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo|Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351632</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384329</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 4 - Install FishEye and Crucible]
* [Dragons Stage 5 - Get JIRA and FishEye Talking]
* [Dragons Stage 6 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351633</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384331</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, FishEye, Crucible or Bamboo, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM.
* No other applications running -- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions about a platform that is not supported, please see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Bitbucket repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, which Bamboo calls an executable. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install JIRA] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351635</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384321</id>
<property name="body"><![CDATA[{excerpt}If you experience problems with running Bamboo as a Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.{excerpt}

h5. RELATED TOPICS

[Dragons Stage 8 - Install Bamboo]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351625</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">214892632</id>
<property name="body"><![CDATA[This page gives an overview of JIRA Studio integration with Bamboo and provides links to more information. Unless otherwise stated, the information here refers to the latest version of JIRA Studio integration with Bamboo. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Integrate your hosted Bamboo instance with your [JIRA Studio|http://www.atlassian.com/hosted/studio/] Subversion repository to enable all of the [continuous integration benefits|http://www.atlassian.com/software/bamboo/features/] of [Bamboo|http://www.atlassian.com/software/bamboo/] for your development suite. 
{excerpt}

{hide}
When adding a screenshot, include a 'flagship image' from the main doc space rather than attaching an image to this page. See example below.
{hide}

h2. Full Description
{hide}
Wherever possible, you should include the full description from the inclusions library of the integration point's own doc space. Replace the word "MYSPACE" with your space key in all instances below.
{hide}
{include:JIRASTUDIO:_about Integrating JIRA Studio with hosted Bamboo|nopanel=true}

h2. Documentation
{hide}
Link to the documentation in the integration point's own doc space.
{hide}
To set up a hosted instance of Bamboo, you will require a valid Bamboo license and a hosting provider. [Contegix|http://www.contegix.com/] are a licensed reseller of Atlassian licenses and are able to offer dedicated hosting. Contact your hosting provider directly to set up your hosted Bamboo instance.

To use your hosted Bamboo instance with your JIRA Studio Subversion repository, please refer to the following documentation:
* [Bamboo --- Setting up Subversion as the repository for build plan|BAMBOO:Subversion]
* [JIRA Studio --- Subversion repository details|JIRASTUDIO:How do I access my Subversion repository?]


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">214859866</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425766</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393098</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425760</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393092</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384286</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

In this step you will configure Confluence to use Crowd for SSO and centralised user management. To do that, you will define the Confluence application in Crowd, define the Crowd user directory in Confluence, and configure the SSO property files. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} (Windows) or {{\{CROWD_INSTALL\}\start_crowd.sh}} (UNIX) and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If this address is not already present, add it: {{127.0.0.1}}.
# Connect Confluence to the Crowd user directory:
#* Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* Select '*User Directories*' from the '*Security*' section of the Confluence Administration Console.
#* Click '*Add Directory*', select type '*Atlassian Crowd*' and click '*Next*'.
#* The Crowd server configuration screen will appear. Enter the following information:
#** Name -- Accept the default value, {{Crowd Server}}.
#** Server URL -- Enter the web address of your Crowd server, e.g. {{http://www.foobar.com:8095/crowd}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence in the Crowd 'Add Application' wizard above.
#** Application Password -- Enter the password that you defined for Confluence in the Crowd 'Add Application' wizard above.
#** Crowd Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the Crowd directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*Crowd Server*', so that the Crowd directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Configure the Confluence property files for SSO:
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. 
#* Comment out the default {{authenticator}} node:
{code:xml}
<!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
{code}
#* Uncomment the line that contains the new authenticator: 
{code:xml}
<authenticator class="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>
{code}
#* Save the {{seraph-config.xml}} file.
#* Copy the {{crowd.properties}} file from {{\{CROWD_INSTALL\}/client/conf/}} to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}, replacing the existing file.
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#** application.name: {{confluence}}
#** application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
#* Save the {{crowd.properties}} file.
# (/) You now have SSO across Confluence, JIRA and Crowd! Try it:
#* Start your Confluence server again, and go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* If you are already logged in to Crowd, you will not need to log in to Confluence. SSO ensures that you are already logged in as {color:blue}*charlie*{color}.
#* Log out of Confluence.
#* Go to Crowd and click an option. Crowd will prompt you to log in. When you logged out of Confluence, SSO ensured that you logged out of Crowd and JIRA too.
#* Log in to JIRA, Confluence or Crowd. You will be logged in to all three.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application] and the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 3 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click '*Search*'.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
{panel}

_{+}Screenshot 4 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 5 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Confluence is on fire! I've completed stage 4 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351590</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425761</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393093</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227448115</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227416179</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384272</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions about a platform that is not supported, please see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351576</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384271</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png!
_Beware of low-flying worms. You are embarking on stage 3 of the_ _[Atlassian Dragon Quest|Here Be Dragons]__._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper {excerpt-include:_DragonsVersionNumber-GH|nopanel=true} for JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.

In this step you will install the GreenHopper plugin into JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Select '*Plugins*' from the '*System*' section of the 'Administration' menu.
# The plugin management page will appear, showing the 'Manage Existing' tab. Click the '*Install*' tab.
# Enter {{greenhopper}} into the search box and click '*Search*'.
# The GreenHopper plugin will appear in the list of plugins. Click the '*GreenHopper*' plugin name.
# The plugin details will appear. Click '*Install Now*'.
# When the plugin has been successfully installed, shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Start your JIRA server again, and log in to JIRA as {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Set up your GreenHopper license key:
#* Select '*License Details*' from the '*GreenHopper*' section of the 'Administration' menu.
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get a '*GreenHopper for JIRA 4: Evaluation*' license key.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

_{+}Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA{+}_
\\
\\  !GreenHopperPlanningBoardDefault.png|thumbnail!\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to update your issues via the GreenHopper tabs or via the standard JIRA interface. For this exercise you will do your updates via GreenHopper.

First you will create two 'sprints', also known as 'milestones'. A sprint is a short period of time, two weeks for example, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints. Finally you will add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Add*' button above the version cards, near the top right of the planning board.
# The 'Add Version' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
#* Leave the default values for the other fields.
#* Click '*Create and Close*'.
# Follow the above steps to add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the sprint box for sprint '*2.0.S1*'.
# Within the sprint box click the gear icon (top right) and select '*Toggle visibility*' or double click the sprint title bar to expand the box.
# The '*Parent*' is currently set to 'none'. Click '*Parent*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Parent*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next you will add a new issue, also known as a card. Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. 
# You will see your planning board again. It currently shows no cards. Click the version number dropdown near the top left of the screen (currently showing '2.0.s2') and select '*Unscheduled*' to see all the cards.
# Click the card for issue {color:blue}{*}DRA-1{*}{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}{*}DRA-2{*}{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty, because it is currently showing cards for version 'Unscheduled'. Click the version number '*2.0.S1*' at the top of the version 2.0.S1 box on the right. You should now see your two cards '{color:blue}{*}DRA-1{*}{color}' and '{color:blue}{*}DRA-2{*}{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The value in the version number dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can double click the title bar of each version box, to minimise or expand the box.
# Mark one of your issues as complete:
#* Click the down arrow next to 'Planning Board' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'To Do' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*Done*' column.
#* The '*Transitioning Issue*' screen will appear. Select '*Close Issue*' and click '*Update*'.
#* The '*Close Issue*' screen will appear. Click '*Close Issue*'.
{panel}

_{+}Screenshot 2 (click to enlarge): The GreenHopper task board for version 2.0{+}_
\\
\\  !GreenHopperTaskBoard-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Use the Scrum Template for your Project and Add a Story

GreenHopper includes a project template for projects using the Scrum methodology. The template adds custom fields like ranking fields, story points, and so on, to your project. It also allows you to create stories, epics and technical tasks. In this step you will apply the Scrum template to your project and create a story.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the '*Tools*' menu on the planning board and click '*Configuration*'.
# The project configuration page will appear. Click the '*General*' tab. 
# Select '*Scrum*' from the '*Project Template*' dropdown menu.
# Click '*Change template*' on the confirmation window.
# Next you will create a new story. Go back to your planning board and click '*New Card*'. Enter the following values:
#* Card type: {{Story}}
#* Priority: {{Major}}
#* Summary: {{As a dragon slayer I would like to wield an extremely big sword.}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Business Value: {{10}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
#* Story Points: {{10}}
# Click '*Create and Close*'. You will see your planning board again, showing your story.
{panel}

_{+}Screenshot 3 (click to enlarge): The GreenHopper planning board with story{+}_
\\
\\  !GreenHopperPlanningBoardStory-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*GreenHopper Agile Gadget*' and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*GreenHopper Agile Gadget*':
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select Select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legend*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*GreenHopper Agile Gadget*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}{*}green{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile Gadget'
* The 'Assigned to Me' gadget
* The 'Projects' gadget

_{+}Screenshot 4 (click to enlarge): JIRA dashboard with 3 gadgets{+}_
\\
\\  !JIRADashboard3Gadgets-v5.png|thumbnail!\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}

h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=GreenHopper for agile dragon slayers. I've completed stage 3 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install Confluence|Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351575</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384277</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye and Crucible]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351581</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384276</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper {excerpt-include:_DragonsVersionNumber-GH|nopanel=true} for JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.

In this step you will install the GreenHopper plugin into JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Click '*Plugins*' in the '*System*' section of the 'Administration' menu.
# The plugin management page will appear. Click the '*Install*' tab.
# Enter {{greenhopper}} into the search box and click '*Search*'.
# The GreenHopper plugin will appear in the list of plugins. Click the '*GreenHopper*' plugin name.
# The plugin details will appear. Click '*Install Now*'.
# When the plugin has been successfully installed, shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} on Windows, or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} on UNIX.)
# Start your JIRA server again, and log in to JIRA as {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Set up your GreenHopper license key:
#* Click '*License Details*' in the '*GreenHopper*' section of the 'Administration' menu.
#* The 'GreenHopper License Information' screen will appear. Paste your GreenHopper license key into the '*GreenHopper License*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get a '*GreenHopper for JIRA 4: Evaluation*' license key.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}Dragons{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

_{+}Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA{+}_
\\
\\  !GreenHopperPlanningBoardDefault-v6.png|thumbnail!\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper 101].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper you can choose to update your issues via the GreenHopper tabs or via the standard JIRA interface. For this exercise you will do your updates via GreenHopper.

First you will create two 'sprints', also known as 'milestones'. A sprint is a short period of time, two weeks for example, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints. Finally you will add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Add*' button above the version cards, near the top right of the planning board.
# The 'Add Version' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
#* Leave the default values for the other fields.
#* Click '*Create and Close*'.
# Follow the above steps to add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the sprint box for sprint '*2.0.S1*'.
# Within the sprint box click the gear icon (top right) and select '*Toggle visibility*', or double click the sprint title bar, to expand the box.
# The '*Parent*' is currently set to 'none'. Click '*Parent*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Parent*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next you will add a new issue, also known as a card. Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{charlie}}
# Click '*Create and Close*', to create the issue. 
# You will see your planning board again. It currently shows no cards. Click the version number dropdown near the top left of the screen (currently showing '2.0.s2') and select '*Unscheduled*' to see all the cards.
# Click the card for issue {color:blue}{*}DRA-1{*}{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}{*}DRA-2{*}{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty, because it is currently showing cards for version 'Unscheduled'. Click the version number '*2.0.S1*' at the top of the version 2.0.S1 box on the right. You should now see your two cards '{color:blue}{*}DRA-1{*}{color}' and '{color:blue}{*}DRA-2{*}{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The value in the version number dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can double click the title bar of each version box, to minimise or expand the box.
# Mark one of your issues as complete:
#* Click the down arrow next to 'Planning Board' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'To Do' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*Done*' column.
#* The '*Transitioning Issue*' screen will appear. Select '*Close Issue*' and click '*Update*'.
#* The '*Close Issue*' screen will appear. Click '*Close Issue*'.
{panel}

_{+}Screenshot 2 (click to enlarge): The GreenHopper task board for version 2.0{+}_
\\
\\  !GreenHopperTaskBoard-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Use the Scrum Template for your Project and Add a Story

GreenHopper includes a project template for projects using the Scrum methodology. The template adds custom fields, such as ranking fields and story points, to your project. It also allows you to create stories, epics and technical tasks. In this step you will apply the Scrum template to your project and create a story.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go back to your planning board, click the '*Tools*' menu and select '*Configuration*'.
# The project configuration page will appear. Click the '*General*' tab. 
# Select '*Scrum*' from the '*Project Template*' dropdown menu.
# Click '*Change template*' on the confirmation window.
# Next you will create a new story. Go back to your planning board and click '*New Card*'. Enter the following values:
#* Card type: {{Story}}
#* Priority: {{Major}}
#* Summary: {{As a dragon slayer I would like to wield an extremely big sword.}}
#* Version: {{2.0}}
#* Component: {{Unknown}}
#* Business Value: {{10}}
#* Assignee: {{charlie}}
#* Story Points: {{10}}
# Click '*Create and Close*'. You will see your planning board again. If your new story does not appear on the board, click the version number '*2.0*' at the top of the version 2.0 box on the right so that the board shows all cards for version 2.0.
{panel}

_{+}Screenshot 3 (click to enlarge): The GreenHopper planning board with story{+}_
\\
\\  !GreenHopperPlanningBoardStory-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*GreenHopper Agile Gadget*' and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*GreenHopper Agile Gadget*':
#* Start typing '*Dragons*' in the '*Project or Saved Filter*' box and select '*Dragons (DRA)*' from the dropdown list that appears.
#* Leave the default value for '*Display chart values*' and '*Display chart legend*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
#* Click the version dropdown arrow next to 'Unscheduled' and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*GreenHopper Agile Gadget*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}{*}green{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile Gadget'
* The 'Assigned to Me' gadget
* The 'Projects' gadget

_{+}Screenshot 4 (click to enlarge): JIRA dashboard with 3 gadgets{+}_
\\
\\  !JIRADashboard3Gadgets-v5.png|thumbnail!\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}

h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=GreenHopper for agile dragon slayers. I've completed stage 2 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install Confluence|Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351580</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215515878</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215483210</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425750</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393081</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384302</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new data directory's location, such as {{C:\data\fisheyecrucible}}.)
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new data directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
(!) Please use the FishEye version specified in this documentation. If the download centre shows a FishEye version later than {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}, click '*downloads archive*' and get FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new data directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new data directory. 
_Note:_ Ignore the fact that this environment variable is called 'INST'. It has nothing to do with the installation directory. This environment variable points to the data directory, but it must still have the name specified above.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new data directory.
# Because FishEye/Crucible will be running on the same machine as JIRA (already installed), you need to ensure that the URL paths are different for FishEye/Crucible and JIRA. Change the default FishEye/Crucible path as follows:
#* Edit the {{config.xml}} in your FishEye/Crucible data directory.
#* Add the {{context}} attribute to the {{web-server}} element:
{code:language=xml}
<web-server context="/fisheye">
{code}
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new data directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install JIRA]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Crucible

In this step you will do the initial setup of your FishEye/Crucible site. As part of this process, you will connect FishEye and Crucible to JIRA, so that you can manage all your users via JIRA and share information between JIRA and FishEye/Crucible.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/fisheye}}. Alternatively, type the host name or IP address instead of {{localhost}}. 
# The FishEye/Crucible setup wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you do not have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. If prompted, ensure that you choose to *include Crucible as part of this evaluation*.
# The '*Connect to JIRA'* step will appear. Enter the following information:
#* JIRA Base URL -- Enter the web address of your JIRA server, e.g. {{http://www.foobar.com:8080}}.
#* Admin Username: {{charlie}}. 
This is {color:blue}*Charlie's*{color} username in JIRA.
#* Admin Password -- Enter Charlie's password for JIRA.
# Leave the other fields (the 'advanced options') at their default values and click the '*Connect to JIRA*' button.
# The 'Set administrator password' screen will appear. Enter an administration password and then enter it again to confirm it.
This is the password you can use to access your FishEye/Crucible administration screens. Charlie will also have permission to access the administration screens.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
You can use the administration password that you defined in the previous step, or you can use {color:blue}*Charlie's*{color} login. We recommend that you log in as Charlie:
## Click '*Log In*' in the top menu bar.
## Enter the username '{{charlie}}' and Charlie's password in JIRA.
## Click the dropdown arrow on the right of Charlie's name in the top menu bar, and select '*Administration*'.
# Now you will connect FishEye/Crucible to your database. In the left-hand 'Admin' menu, click '*Database*' under 'Systems Settings'.
# Click '*Edit*' and enter the following details:
#* Type -- Select '*PostgreSQL*'.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}} -- Note that this value is different from the default value.
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- Enter the password you defined in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. 
If the test fails:
#* Verify that you have the PostgreSQL JDBC driver JAR file in the FishEye data directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. 
#* Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. 
#* Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. Wait a while and try again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Configuring FishEye].

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:bitbucket}
h2. Step 5. Connect FishEye to Bitbucket

For this integration exercise we provide a Bitbucket repository that you can connect to your FishEye 'Dragons' repository. Bitbucket is a code hosting site for the [Mercurial|http://mercurial.selenic.com/] distributed version control system (DVCS). We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Mercurial|http://mercurial.selenic.com/], [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. 

For this integration exercise, follow the steps below to install Mercurial and then connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Get [Mercurial|http://mercurial.selenic.com/] and [Python|http://www.python.org/]. Make sure that you get *Mercurial 1.5 or later*. 
#* If you are on Windows you can download and install [TortoiseHg|http://tortoisehg.bitbucket.org/]. This bundles Python and Mercurial.)
#* Note: For some UNIX distributions, the default download will include Mercurial 1.4.3. You will need 1.5 or later.
# Add or edit your Mercurial config file at {{C:\Documents and Settings\MY_NAME\mercurial.ini}} (Windows XP) or  {{C:\MY_NAME\mercurial.ini}} (Windows 7) or {{~/.hgrc}} (UNIX). The file should contain your preferred editor and your username. If you do not already have a username, you can use {{atlassian_dragons}}:
{noformat}
[ui]
; editor used to enter commit logs, etc.  Most text editors will work.
editor = notepad
username = atlassian_dragons
{noformat}
# Go to your FishEye administration screen in your browser.
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add*' button. The first screen of the 'New Repository' wizard will appear. 
# Enter the following information:
#* Repository Type: {{Mercurial}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* Repository Location: {{https://bitbucket.org/atlassian_dragons/dragonslayers}}.
#* Authentication Style: {{No authentication}}.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Bitbucket is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard-v6.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Mercurial]. You can learn about Bitbucket and Mercurial in the [Bitbucket documentation|BITBUCKET:Bitbucket 101].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the 'Source' view. Click '*Tools*' then '*RSS Feed*'. You can get an RSS feed on the dashboard too.

(/) Click the changeset number ({{0:922fd9308885}}) in the activity stream to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Ready to be blown away by FishEye and JIRA. Completed stage 4 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Get JIRA and FishEye Talking|Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351606</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215515871</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215483201</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384300</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then select '*Administration*' from the dropdown menu
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS Feed*'.

(/) Click the changeset number ({{153936}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Ready to be blown away by FishEye, JIRA and Crowd. Completed stage 5 of Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351604</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425757</id>
<property name="body"><![CDATA[{section}
{column:width=190px}
!tee_dragonslayer.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393089</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384294</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 5 - Install FishEye and Crucible]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351598</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384291</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png!
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will configure JIRA to manage your Confluence users, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb --owner confuser --encoding utf8 confluence
exit
{noformat}
{panel}
_+Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL+_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
(!) Please use the Confluence version specified in this documentation. If the download centre shows a Confluence version later than {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}, click '*downloads archive*' and get Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the ports and URL paths are different for Confluence and JIRA. By default, both applications use port 8080. Change the default Confluence port and path as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
{code:language=xml}
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8090" minProcessors="5"
                   maxProcessors="75"
                   enableLookups="false" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000"
                   useURIValidationHack="false" URIEncoding="UTF-8"/>
{code}
#* Change the value of the {{path}} attribute in the {{Context}} element to {{/confluence}}:
{code:language=xml}
<Context path="/confluence" docBase="../confluence" debug="0" reloadable="false" useHttpOnly="true">
{code}
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Please use the Confluence version specified in this documentation. If the download centre shows a Confluence version later than {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}, click '*downloads archive*' and get Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the ports and URL paths are different for Confluence and JIRA. By default, both applications use port 8080. Change the default Confluence port and path as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
{code:language=xml}
<Connector className="org.apache.coyote.tomcat4.CoyoteConnector" port="8090" minProcessors="5"
                   maxProcessors="75"
                   enableLookups="false" redirectPort="8443" acceptCount="10" debug="0" connectionTimeout="20000"
                   useURIValidationHack="false" URIEncoding="UTF-8"/>
{code}
#* Change the value of the {{path}} attribute in the {{Context}} element to {{/confluence}}:
{code:language=xml}
<Context path="/confluence" docBase="../confluence" debug="0" reloadable="false" useHttpOnly="true">
{code}
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090/confluence|http://localhost:8090/confluence].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# If the 'What's new in Confluence' popup window appears, select '*Don't show again*' and click '*Close*'. 
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090/confluence]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090/confluence]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to JIRA for User Management

When you have finished setting up your Atlassian application suite, JIRA will hold all your users and groups and you will have a single username across all your Atlassian applications. In this step you will configure Confluence to use JIRA for centralised user management. To do that, you will define the Confluence application in JIRA, and define the JIRA user directory in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If JIRA is not already running, start it up by running {{\{JIRA_INSTALL\}\bin\startup.bat}} (Windows) or {{\{JIRA_INSTALL\}/bin/startup.bat}} (UNIX).
# {anchor:DefineConfluence}Define the Confluence application to JIRA:
#* Go to your JIRA URL in your browser, e.g. {nolink}[http://www.foobar.com:8080]{nolink}.
#* Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
#* Click '*Administration*' in the top navigation bar.
#* Click '*Other Applications*' in the 'Users, Groups & Roles' section of the left-hand panel.
#* Click '*Add Application*'.
#* The 'Add Application' screen will appear. Enter the following information:
#** Application name: {{confluence}}
#** Password -- Enter a password that Confluence will use to access JIRA.
#** IP Addresses -- On a new line, add the IP address or addresses of your Confluence server. For example: {{192.168.10.12}}.
Also add this IP address: {{127.0.1.1}}
#* Click '*Save*'.
# Set up the JIRA user directory in Confluence:
#* Go to your Confluence URL in your browser, e.g. {nolink}[http://www.foobar.com:8090/confluence]{nolink}.
#* If you are not already on the Confluence administration screen, open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* Click '*User Directories*' under 'Security' in the left-hand panel.
#* Click '*Add Directory*, select type '*Atlassian JIRA*' and click '*Next*'.
#* The 'Configure Atlassian JIRA Server' screen will appear. Enter the following information:
#** Name: Accept the default value, {{JIRA Server}}.
#** Server URL -- Enter the web address of your JIRA server, e.g. {{http://www.foobar.com:8080}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence to JIRA in the steps [above|#DefineConfluence].
#** Application Password -- Enter the password that you entered when defining Confluence to JIRA in the steps [above|#DefineConfluence].
#** JIRA Server Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the JIRA user directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*JIRA Server*', so that the JIRA directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in JIRA.
(/) You are now authenticating via JIRA!
{panel}

_+Screenshot 3 (click to enlarge): Confluence user directories+_
\\
\\  
!ConfluenceUserDirectories.png|thumbnail!
\\
\\

Full details are in the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090/confluence].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090/confluence]}} or {{[http://www.foobar.com:8090/confluence]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 4 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge03.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'. Select '*Heading 2*'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click the '*Search*' button.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
_Note:_ The new issue will appear immediately under the heading 'Reporting a new issue'. You may need to click the refresh icon at the bottom of the table of issues, to see the new issue appear in the table. This is because the issues shown in the table are cached.
{panel}

_{+}Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge03.png!
{column}
{column}

h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=Confluence is on fire! I've completed stage 3 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 4 - Install FishEye and Crucible|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351595</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384252</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.4/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the JIRA user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E jirauser
# Create the JIRA database:
/opt/PostgreSQL/8.4/bin/createdb -O jirauser jira
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351556</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384251</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}

h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}

h2. Step 2. Install JIRA

Requirements: *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{C:/data/jira-home}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 1 [above|#database].
#** *Schema* -- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}/bin/config.sh}}
#* Tell JIRA where to put its JIRA Home directory under the '*JIRA Home*' tab. For example: {{/usr/local/jira-home/}}
#* Configure the database connection under the '*Database*' tab.
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 1 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 1 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 1 [above|#database].
#** *Schema* -- Accept the default '*public*' schema.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# Accept the default '*Pool Size*' setting.
# Click '*Save*' when you have a working connection and click '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Application Title -- Accept the default application title.
#* Mode -- Accept the default mode.
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{[http://coopers:8080]}}. Or specify a website address, such as {{[http://www.foobar.com:8080]}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}{{{}{*}charlie{*}{}}}{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
{panel}

_{+}Screenshot 2: The JIRA Dashboard when you first log in{+}_
\\
\\ !JIRADashboardOnLogin-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}

h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory\!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}

h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/?status=JIRA is hot, the dragon is not! I've completed stage 2 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA|Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351555</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384254</id>
<property name="body"><![CDATA[# Turn on the public API and allow unassigned issues:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Enter your password as prompted, to confirm that you want administrator access. (Note that the Atlassian applications will request this confirmation at various steps in the process. This guide will not mention this step again.)
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Allow unassigned issues*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351558</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">228917261</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[alice.paillard@valiantys.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2010-12-14 08:20:09.895</property>
<property name="lastModificationDate">2010-12-14 08:20:09.895</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384253</id>
<property name="body"><![CDATA[(/) You can now see your project dashboard with 2 gadgets on it! The 'Projects' gadget shows the project lead {color:blue}*Charlie of Atlassian*{color}. The 'Assigned to Me' gadget shows the single {color:blue}*DRA-1*{color} issue assigned to Charlie.

+_Screenshot 4 (click to enlarge): JIRA dashboard with 2 gadgets_+
\\
\\
!JIRADashboard2Gadgets.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351557</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384247</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows service, so that it starts each time you start Windows, by running {{\{BAMBOO_INSTALL\InstallAsService.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}}. You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add a builder as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Builder Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Java\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.2.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.v22.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Plan Name: {{Main}}
#* Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# The 'Plan Summary' for the 'Main' plan in the 'Dragons' will appear. The 'Recent History' has a link to the build result, '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v5.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v5.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*\#1*' in the '*Recent History*' to open the build result summary.
* Click '*Comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/?status=This dragon is a big teddy bear. I've completed stage 8 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351551</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384267</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye and Crucible]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351571</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227448042</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Reopen JIRA Issue DRA-1

Before we can create subtasks for JIRA issue DRA-1 from Crucible, we need to reopen it.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
{panel}

h2. Step 2. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Leave unchanged.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 4. Create a Review

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 5. Create a JIRA Issue from a Crucible Review

Next, you will create a JIRA issue from the comment in your Crucible review, and resolve the issue via Crucible.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# The FishEye/Crucible dashboard will appear. Click '*commented*' in the '*commented on DRA-1*' text in the activity stream.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 6. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227416100</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227448039</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Reopen JIRA Issue DRA-1

Before we can create subtasks for JIRA issue DRA-1 from Crucible, we need to reopen it.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
{panel}

h2. Step 2. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Sub-task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Select '*Fixed*'.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 4. Create a Review 

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227416096</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384269</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. JIRA will also act as a central user repository for all your Atlassian applications.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Install Java

{include:_Dragons JDK|nopanel=true}

h2. Step 2. Install your PostgreSQL Database Server

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}

h2. Step 4. Install JIRA

Requirements: *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise. Please make sure you follow the instructions below to download the 'Standalone *(ZIP Archive)*' file.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
(!) Please use the JIRA version specified in this documentation. If the download centre shows a JIRA version later than {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}, click '*downloads archive*' and get JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}\bin\config.bat}}
#* On the '*JIRA Home*' tab, tell JIRA where to put its JIRA Home directory (the data directory). For example: {{C:\data\jira-home}}
#* On the '*Database*' tab, configure the database connection:
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 3 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 3 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 3 [above|#database].
#** *Schema* -- Leave this at the default setting, i.e. '*public*'.
#** *Pool Size* -- Leave this at the default setting.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# When you have a working connection, click '*Save*' and then '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}*.
(!) Please use the JIRA version specified in this documentation. If the download centre shows a JIRA version later than {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}, click '*downloads archive*' and get JIRA {excerpt-include:_DragonsVersionNumber-JIRA|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Run the JIRA Configuration Tool at {{\{JIRA_INSTALL\}/bin/config.sh}}
#* On the '*JIRA Home*' tab, tell JIRA where to put its JIRA Home directory (the data directory). For example: {{/home/<user>/jira-home/}} 
#* On the '*Database*' tab, configure the database connection:
#** *Database type:* {{PostgreSQL}}.
#** *Hostname* -- Enter the name or IP address of the server that you installed your PostgreSQL database on, i.e. {{localhost}}.
#** *Port* -- Enter the default port that you set up PostgreSQL with, i.e. {{5432}}.
#** *Database* -- This is the name of the database that you created in step 3 [above|#database], i.e. {{jira}}.
#** *Username* -- This is the user you created in step 3 [above|#database], i.e. {{jirauser}}.
#** *Password* -- Enter the password you chose in step 3 [above|#database].
#** *Schema* -- Leave this at the default setting, i.e. '*public*'.
#** *Pool Size* -- Leave this at the default setting.
# Click the '*Test Connection*' button to test the connection settings. The tool will attempt to connect to the database, and give a message with the results.
# When you have a working connection, click '*Save*' and then '*Close*'.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 5. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Application Title -- Accept the default application title.
#* Mode -- Accept the default mode.
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{[http://coopers:8080]}}. Or specify a website address, such as {{[http://www.foobar.com:8080]}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user. Enter the following information:
#** Username: {color:blue}{{{}{*}charlie{*}{}}}{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}{{{}{*}charlie{*}{}}}{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
{panel}

_{+}Screenshot 2: The JIRA Dashboard when you first log in{+}_
\\
\\ !JIRADashboardOnLogin-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{anchor:project}
h2. Step 6. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory\!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge01.png!
{column}
{column}

h5. Don your Belt and Boots, and Move to the Next Stage 

* *Tweet?* [Tweet|http://twitter.com/?status=JIRA is hot, the dragon is not! I've completed stage 1 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest].
* Go to [Dragons Stage 2 - Install GreenHopper into JIRA|Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351573</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">234685077</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge01.png!
{column}
{column} 
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t+dragon+slayers+one+and+all!+I've+completed+stage+1+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">234652402</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">234685073</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], where you're sure to meet other battle-weary dragon slayers.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye and Crucible]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">234652398</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">179208294</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">179240981</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[olmas]]></property>
<property name="creationDate">2008-12-30 13:25:13.023</property>
<property name="lastModificationDate">2008-12-30 13:25:13.023</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384231</id>
<property name="body"><![CDATA[{excerpt}3.0.1{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351535</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384229</id>
<property name="body"><![CDATA[{excerpt}2.5.2{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351533</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384227</id>
<property name="body"><![CDATA[{excerpt}3.5{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351531</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384228</id>
<property name="body"><![CDATA[{excerpt}2.5.2{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351532</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384223</id>
<property name="body"><![CDATA[{excerpt}4.3{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351527</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384224</id>
<property name="body"><![CDATA[{excerpt}5.5{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351528</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">28508168</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[yjy@goldpitcher.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2007-03-19 00:59:16.022</property>
<property name="lastModificationDate">2008-06-14 23:41:06.919</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093682</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211060993</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093685</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=30%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}
{column}
{column:width=30%}

{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=%23AtlassianDragons}
{column}
{section}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}


{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211060997</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093684</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=30%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=30%}

{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=%23AtlassianDragons}
Column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA]. 
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211060996</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">172130375</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">172097549</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[alexandre.rey-durin@exane.com]]></property>
<property name="creationDate">2008-11-18 07:25:46.531</property>
<property name="lastModificationDate">2008-11-18 07:25:46.531</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">3644</id>
<property name="name"><![CDATA[issues]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2006-12-20 10:03:12.465</property>
<property name="lastModificationDate">2007-08-30 13:09:30.035</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227444368</id>
<property name="body"><![CDATA[{excerpt}2.4.1{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411691</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227444367</id>
<property name="body"><![CDATA[{excerpt}2.4.1{excerpt}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227411690</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">166723686</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">32702473</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[rkrishna]]></property>
<property name="creationDate">2008-08-21 22:18:04.262</property>
<property name="lastModificationDate">2008-08-21 22:18:04.262</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">165086474</id>
<property name="body"><![CDATA[When we say 'integration point', we mean a way in which the Atlassian products work together. It is a fairly broad term, basically meaning something you may want to do.

For example, you may want to display your JIRA issues on a Confluence page. That is an integration point. Or you may want to implement single sign-on across all your Atlassian products. That is another integration point.

Here are some of the ways the products work together. Click an item to see more details of the integration point and how you can make it happen.

{children:depth=1|style=h6|excerpt=true}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165119306</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">216629328</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">216760330</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[aseith]]></property>
<property name="creationDate">2010-04-20 16:34:35.417</property>
<property name="lastModificationDate">2010-04-20 16:34:35.417</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">165086477</id>
<property name="body"><![CDATA[When we say 'integration point', we mean a way in which the Atlassian products work together. It is a fairly broad term, basically meaning something you may want to do.

For example, you may want to display your JIRA issues on a Confluence page. That is an integration point. Or you may want to implement single sign-on across all your Atlassian products. That is another integration point.

Here are some of the ways the products work together. Click an item to see more details of the integration point and how you can make it happen.

{section}
{column:width=200px}
{children:depth=1|style=h6|excerpt=true}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165119309</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">165086452</id>
<property name="body"><![CDATA[When we say 'integration point', we mean a way in which the Atlassian products work together. It is a fairly broad term, basically meaning something you may want to do.

For example, you may want to display your JIRA issues on a Confluence page. That is an integration point. Or you may want to implement single sign-on across all your Atlassian products. That is another integration point.

Here are some of the ways the products work together. Click an item to see more details of the integration point and how you can make it happen:
{children:depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165119283</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384341</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 4 - Install FishEye and Crucible]
* [Dragons Stage 5 - Get JIRA and FishEye Talking]
* [Dragons Stage 6 - Get JIRA and Crucible Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351645</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384342</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install JIRA].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install JIRA], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb --owner bamuser --encoding utf8 bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
(!) Please use the Bamboo version specified in this documentation. If the download centre shows a Bamboo version later than {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}, click '*downloads archive*' and get Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Run the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}\-standalone-windows-x32.exe}} or {{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x64.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Because Bamboo will be running on the same machine as JIRA, you need to ensure that the URL paths are different for Bamboo and JIRA. Change the default Bamboo path as follows:
#* Edit the {{wrapper.conf}} file in your {{\{BAMBOO_INSTALL\}\conf}} folder. 
#* Find the following line:
{code}
wrapper.app.parameter.4=/
{code}
and replace it with the following line:
{code}
wrapper.app.parameter.4=/bamboo
{code}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\BambooConsole.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
(!) Please use the Bamboo version specified in this documentation. If the download centre shows a Bamboo version later than {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}, click '*downloads archive*' and get Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}. 
_Why?_ We have tested the integration suite with this version. There is a chance that you will have problems integrating the other applications if you use a different version.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Because Bamboo will be running on the same machine as JIRA, you need to ensure that the URL paths are different for Bamboo and JIRA. Change the default Bamboo path as follows:
#* Edit the {{wrapper.conf}} file in your {{\{BAMBOO_INSTALL\}/conf/}} folder. 
#* Find the following line:
{code}
wrapper.app.parameter.4=/
{code}
and replace it with the following line:
{code}
wrapper.app.parameter.4=/bamboo
{code}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. Bamboo calls them 'executables'. See the [Bamboo documentation|BAMBOO:Configuring a new Executable]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/bamboo].
# The Bamboo Setup Wizard will start, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*General Configuration*' information as follows:
#* Name: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085/bamboo}}. Or specify a website address, such as {{http://www.foobar.com:8085/bamboo}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Artifacts Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to the Bamboo database created in step 1 [above|#database]:
#* Connection Type: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password that you will use for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) The Bamboo home page will appear.
# Now you will check that your Bamboo configuration includes your default executable and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Executables*' in the left-hand menu.
# The 'Executables' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools like Script, MSBuild or Bash. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your executable is not included, click '*Add an executable as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Executable}}.
#* Type: {{Maven 2.x}}.
#* Executable Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install JIRA] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*add a JDK as a server capability*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Java\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage-v6.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:jira}
h2. Step 4. Hook Bamboo up to JIRA for User Management 

When you have completed this step, you will be able to manage your Bamboo users in JIRA and have the same usernames and passwords in JIRA and Bamboo. First you will define the Bamboo application in JIRA. Then you will adjust your Bamboo installation to delegate user management to JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{{nolink}http://www.foobar.com:8080{nolink}}}.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# Click '*Other Applications*' in the left-hand navigation panel (under 'Users, Groups & Roles').
# The 'Configure Other Applications' screen will appear, showing FishEye and Confluence already configured. Click '*Add Application*'.
# The 'Add Application' screen will appear. Enter the following information:
#* Application Name: {{bamboo}}.
#* Password -- Enter a password that Bamboo will use to access JIRA, and enter it again to confirm it.
#* IP Addresses -- On a new line, add the IP address or addresses of your Bamboo server. For example: {{192.168.10.12}}.
# Click '*Save*'. 
# Leave JIRA up and running, but shut down Bamboo. (On Windows, open your Bamboo console window and press *Ctrl+C* then enter '*y*' next to the 'Terminate batch job' prompt. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following 'Crowd integration client' JAR from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Download a new 'Crowd integration client' JAR from the [download site|https://maven.atlassian.com/content/groups/public/com/atlassian/crowd/crowd-integration-client/2.3.0-m4/crowd-integration-client-2.3.0-m4.jar].
# Copy the downloaded JAR to your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* Check that {{application.name}} is set to the correct value: {{bamboo}}.
#* Change the {{application.password}} -- Enter the password that Bamboo will use to access JIRA. This must be the same password as you entered when defining Bamboo to JIRA [above|#jira].
#* Change the {{application.login.url}} to point to JIRA's URL: {{{nl}http://localhost:8080/{nl}}}.
#* Change the {{crowd.server.url}} to point to JIRA's URL: {{{nl}http://localhost:8080/{nl}}}.
#* Add a new line containing the following text: {{bamboo.crowd.cache.minutes 60}}.
Your {{crowd.properties}} file should look like this, except that the password will be your password:
{code:xml}
application.name                        bamboo
application.password                    bamboo
application.login.url                   http://localhost:8080/

crowd.server.url                        http://localhost:8080/

session.isauthenticated                 session.isauthenticated
session.tokenkey                        session.tokenkey
session.validationinterval              0
session.lastvalidation                  session.lastvalidation

bamboo.crowd.cache.minutes              60
{code}
#* Save the file.
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. 
#* Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
#* Save the file.
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/log4j.properties}} file.
#* Add the following line:
{code:xml}
log4j.category.com.atlassian.crowd.integration.atlassianuser.UserGroupCache=INFO
{code}
#* Save the file.
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{http://www.foobar.com:8085/bamboo}}.
# Log in using Charlie's password in JIRA.
(/) You are now authenticating via JIRA!
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will configure an application link between JIRA and Bamboo, so that you can later add Bamboo gadgets to JIRA. You will also set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA site in your browser.
# Click '*Administration*' in JIRA's top navigation bar.
# Click '*Application Links*' in the left-hand panel, under 'System'.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your Bamboo site (e.g. {{[http://coopers:8085/bamboo]}} or {{[http://www.foobar.com:8085/bamboo]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to Bamboo' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your Bamboo site.
#* Password -- Enter Charlie's password in JIRA (because you are managing your users in JIRA and are therefore using Charlie's user profile in JIRA).
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your JIRA site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will define your Bamboo server to JIRA. Click '*Bamboo Servers*' in the 'Global Settings' section of the left-hand navigation panel.
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085/bamboo}} or {{http://www.foobar.com:8085/bamboo}}.
#* User name: {{charlie}} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in JIRA.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the 'Communication' section of the left-hand panel.
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {{charlie}} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in JIRA.
# Issue Key: {{DRA-1}} -- This is the JIRA issue key for the issue that you created in [Dragons stage 1|Dragons Stage 1 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA username and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Application Links].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a Bitbucket repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Details' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Plan Name: {{Main}}.
#* Plan Key: {{MAIN}}.
#* Plan Description: {{Dragon slaying plan}}.
# Enter the following information in the 'Source Repository' section:
#* Source Control: {{Bitbucket}}.
#* Username: {{atlassian_dragons}}.
#* Password -- Not required for our sample repository.
#* Repository -- Select the '*URL*' option.
#* Repository URL: {{[https://bitbucket.org/atlassian_dragons/dragonslayers]}}.
# Leave the rest of the fields in the 'Source Repository' and 'Build Strategy' sections at their default values.
# Click '*Configure Tasks*'.
# The 'Configure Tasks' screen will appear. Click '*Add Task*'.
# The 'Task Types' screen will appear. Find and select '*Maven 2.x*'.
# The 'Maven 2.x Configuration' panel will appear. Enter the following information:
#* Task Description: {{Maven build}}.
#* Executable: {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Save*'. You have now defined one task in your plan.
# Select '*Yes please*' under '*Enable this Plan*'.
# Click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# The 'Plan Summary' will appear, showing the 'Main' plan in the 'Dragons' project. Click '*\#1*' under 'Recent History' to open the build result summary for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v6.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v6.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* Click '*Comment*' on the Bamboo build result summary.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 5 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful-v6.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab on the build result screen, to see the JIRA issues for a build result.
\\
\\
+_Screenshot 6 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues-v6.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 7 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild-v6.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. Unfortunately, you cannot reproduce this now because our sample repository is read-only.

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/?status=This dragon is a big teddy bear. I've completed stage 7 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory|Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351646</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384337</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows service, so that it starts each time you start Windows, by running {{\{BAMBOO_INSTALL\InstallAsService.bat}}. If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}}. You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. Note that you do not need to configure an IDE. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add a builder as a server capability*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Builder Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'.
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that your Java Home environment variable is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Java\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*'.
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.2.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.v22.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 1 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Plan Name: {{Main}}
#* Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# The 'Plan Summary' for the 'Main' plan in the 'Dragons' will appear. The 'Recent History' has a link to the build result, '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v5.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v5.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*\#1*' in the '*Recent History*' to open the build result summary.
* Click '*Comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/?status=This dragon is a big teddy bear. I've completed stage 8 of the Atlassian Dragon Quest %23AtlassianDragons http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351641</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384350</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_09.png! 
_You're nearly there. Stage 9 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *5 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo and Subscribe JIRA to Bamboo Gadgets

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
# Now you will make your Bamboo gadgets available in JIRA, so that JIRA users will be able to add any Bamboo gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Bamboo site (e.g. {{[http://coopers:8085]}} or {{[http://www.foobar.com:8085]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Two Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. 
#* Uncheck '*Use my favourite plans*'. Enter 'dra' in the textbox and select '*Dragons - All Plans*' in dropdown menu that opens.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Bamboo Plans*' gadget to the bottom right of your dashboard. Drag the '*Bamboo Plan Summary Chart*' gadget to the bottom right too. (This is _optional_, just to make everything fit into the screenshot you will take later, when you claim your Atlassian DragonSlayer T-shirt.)
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 8 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget

+_Screenshot 1 (click to enlarge): JIRA dashboard with 8 gadgets_+
\\
\\
!JIRADashboardStage9-v5.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/?status=Victory! Dragons hold no fear for me. %40atlassian where's my T-shirt%3F %23AtlassianDragons http://atlss.in/dragonquest]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
* See the tips for [life after Dragons|After Dragons].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351654</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384358</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to use that database for your other applications too. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge01.png!
{column}
{column} 
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t+dragon+slayers+one+and+all!+I've+completed+stage+1+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351662</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384355</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Complete this stage first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]

Then join the rest of the brave dragon slayers at stage 2:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 4 - Install FishEye and Crucible]
* [Dragons Stage 5 - Get JIRA and FishEye Talking]
* [Dragons Stage 6 - Get JIRA and Crucible Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351659</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384353</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 2 - Install GreenHopper into JIRA]
* [Dragons Stage 3 - Install Confluence]
* [Dragons Stage 4 - Install FishEye and Crucible]
* [Dragons Stage 5 - Get JIRA and FishEye Talking]
* [Dragons Stage 6 - Get JIRA and Crucible Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351657</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384352</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to *Atlassian staff only*. We will publish it at the release of Dragons v6, scheduled for June 2011.{color}

{excerpt}During the [Atlassian Dragon Quest|Here Be Dragons], you added just one user to your integrated suite: *Charlie of Atlassian*. Very soon you will want to add more users, and in particular users who are not administrators. You also configured all the Atlassian applications to centralise their user management in JIRA. We recommend that you use JIRA for all user and group management.{excerpt}

Below is a summary of how to add your new users in JIRA. Details are in the [JIRA documentation|JIRA:Managing Users]. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to JIRA in your browser.
# Click '*Administration*' in the top navigation bar.
# Click '*User Browser*' in the left-hand panel.
# Click '*Add User*'.
# Enter the user information and click '*Create*'.
# Add the new user to the relevant groups, to give the user access to the Atlassian applications:
{noformat}
bamboo-admin
confluence-users
jira-developers
jira-users
{noformat}
{panel}

h5. RELATED TOPICS

[Dragons Stage 1 - Install JIRA]
[JIRA documentation|JIRA:Managing Users]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351656</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211093593</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:Gadgets and Dashboards Development Hub]
* [REST APIs|DEVNET:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|CONFDEV:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:Crowd Development Hub]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211060897</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384351</id>
<property name="body"><![CDATA[{excerpt}During the [Atlassian Dragon quest|Here Be Dragons], you added just one user to your integrated suite: *Charlie of Atlassian*. Very soon you will want to add more users, and in particular users who are not administrators. We recommend that you use Crowd for all user and group management. Below is a suggested plan of action and a hint about what to do if new users experience a delay before they can see their JIRA projects.{excerpt}

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Configure Crowd to automatically give new users access to JIRA, Confluence and other applications when each user is added. Details are in the [Crowd documentation|CROWD:Automatically Assigning Users to Groups]. Here is a summary:
#* Go to your Crowd URL in your browser, e.g. {{[http://coopers:8095/crowd]}}.
#* Log in with username {color:blue}*{{charlie}}*{color}.
#* Click the '*Directories*' link in the top navigation bar.
#* The '*Directory Browser*' appears. Click the link on the '*Crowd*' directory name.
#* The directory '*Details*' screen appears. Click the '*Options*' tab.
#* The '*Options*' screen appears. Click the '*Add Groups*' button.
#* The '*Add Groups*' popup screen appears. Leave the search box empty to match all group names, and click '*Search*'.
#* Select the groups by putting a tick in the checkbox next to one or more group names. For example, select the following groups to ensure that all new users are automatically given access to JIRA and Confluence:
#** {{confluence-users}}
#** {{jira-developers}}
#** {{jira-users}}
#* Click the '*Add Selected groups*' button.
# Add your new users via Crowd. Details are in the [Crowd documentation|CROWD:Adding a User]. Here is a summary:
#* Click the '*Users*' tab in the top navigation bar.
#* The '*User Browser*' appears. Click '*Add User*' in the left-hand menu.
#* Enter the user information and then click '*Create*'.
{panel}

{tip:title=Do you notice a delay before new users can see their JIRA projects?}After you have added a new user to Crowd, there may be a delay of a few minutes before that user can see all the information in JIRA, Confluence or another application. This is because the user and group information is stored in a client cache. We recommend that you leave the default cache settings as they are, unless there is an urgent need to change them. The client cache settings are explained in the [Crowd documentation|CROWD:Configuring Caching for an Application].{tip}

h5. RELATED TOPICS

[Dragons Stage 1 - Install Java, PostgreSQL and Crowd]
[Crowd documentation|CROWD:Adding a User]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351655</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384361</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, FishEye, Crucible or Bamboo, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM.
* No other applications running -- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions about a platform that is not supported, please see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Bitbucket repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, which Bamboo calls an executable. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install JIRA] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351665</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425523</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:]


If you slay the final dragon, you win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, Postgres and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Unzip program for extracting our downloaded archive files:* Please check your unzip program before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392843</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">236619020</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Add a JIRA-FishEye Application Link 

In this step you will link your JIRA and FishEye servers by creating an application link.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your FishEye site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'. The application link will be created and displayed on the 'Configure Application Links' page.
# Click '*JIRA Settings*' next to the '*Your Company JIRA*' application link.
# Change the '*Application Name*' to {{Dragons JIRA}} and click '*Update*'.
# Click '*JIRA Settings*' next to the '*Dragons JIRA*' application link.
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox.
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Adding JIRA as a trusted application in FishEye{+}_ 

!FishEyeCrucibleAppLinks.png|thumbnail!

h2. Step 2. Link a FishEye Repository to a JIRA Project and Subscribe JIRA to FishEye Gadgets

In this step you link your FishEye repository to your JIRA project via an "entity link". This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and click '*Application Links*' from the menu that appears.
# Click '*Add Link*' then click '*Dragons JIRA (JIRA)*' from the dropdown menu.
# Click '*Create*'. The FishEye repository-JIRA project link will be created.
# Now you will make your FishEye gadgets available in JIRA, so that JIRA users will be able to add any FishEye gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060]}} or {{[http://www.foobar.com:8060]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}


h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Edit Primary Configuration*'.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses for your FishEye/Crucible instance (separated by commas), e.g. 127.0.0.1, 172.20.5.95.
You can find the IP addresses for your FishEye/Crucible instance by viewing the 'Remote Addresses' tab for the application in Crowd.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses for your JIRA instance (one per line), e.g. 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths (one per line): {{/plugins/servlet/streams}}, {{/sr/jira.issueviews:searchrequest}}, {{/secure/RunPortlet}}, {{/rest}}, {{/rpc/soap}}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.


Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">236586397</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425524</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392844</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">236619018</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *40 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecruclbie}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Click the changeset number ({{153935}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">236586395</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675075</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Ready, steady, tweet?}Please read the introduction [below|#introduction].
If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

Why would we ask you to undertake this quest?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can make the process better.
* We hope you'll have some *fun* along the way.
* It's another excuse to give away some *T-shirts*.

Setting up an integrated suite of Atlassian applications will give you awesome results. But we know that the setup process can be long and difficult. We want to improve the process and we'd like your feedback to help us do that.

We have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a T-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.  

h6. Getting Help

If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

[Read, steady, go|#go].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708134</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425539</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392860</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425541</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.4*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392862</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425536</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392857</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425537</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392858</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425547</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* Click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. Click the issue key to open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392869</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">166723759</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">166756384</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[bfeustel]]></property>
<property name="creationDate">2008-08-26 14:18:52.077</property>
<property name="lastModificationDate">2008-08-26 14:18:52.077</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425545</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}') on the 'Source' tab in JIRA.

(/) You can also click through from FishEye to JIRA, by clicking the issue key. Try it by clicking '{color:blue}*DRA-1*{color}' in your FishEye view.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392866</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425493</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* Click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. Click the issue key to open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. (Unfortunately, you cannot reproduce this now because our sample repository is read-only.)
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392812</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425491</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* Click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. Click the issue key to open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): JIRA issues tab for a build result_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): Bamboo build tab for a JIRA issue_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) If your issue key is included in your commit comment, you will be able to click the source link on the Bamboo build result to view the changed code in FishEye.

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392810</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">236618975</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *40 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecruclbie}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable immediately -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Click the changeset number ({{153935}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">236586351</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425510</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_Congratulations! Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Status' and 'Bamboo Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Status' and 'Bamboo Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Get a T-Shirt :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons]. 
* *Congratulations!* Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392830</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425509</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* Click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. Click the issue key to open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Take a Bow and Move to the Next Stage

;) _Host a {color:blue}*Dragons 7 Party*{color}. How the party flows is totally up to you. Check out your JIRA issue's Activity Stream and enjoy the bonus activities in FishEye. Bottom line: Guests love it when the activity is about them. This is *your* party. Have fun out there. OK, on a more serious note..._

* *Tweet?* [Tweet|http://twitter.com/home?status=I'm+holding+a+Dragons+7+party+%23AtlassianDragons].
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392829</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">236618972</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *40 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecruclbie}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation.*' checkbox selected during the process.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable immediately -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Click the changeset number ({{153935}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">236586348</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425507</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392827</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425506</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392826</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">3260</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[laura.kolker]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2006-10-18 10:10:17.780</property>
<property name="lastModificationDate">2008-07-22 15:23:53.902</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425504</id>
<property name="body"><![CDATA[In this step you will create some data in JIRA, including a project and an issue, for use in the subsequent stages of this integration procedure. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392824</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425503</id>
<property name="body"><![CDATA[Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in *Dragons Stage 1*.

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer when installing PostgreSQL, pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that the default installation directory of {{/opt/PostgreSQL/8.3/bin/}} was used.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the JIRA user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E jirauser
# Create the JIRA database:
/opt/PostgreSQL/8.3/bin/createdb -O jirauser jira
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392823</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203425512</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Turn on external user management in Confluence, so that all user management happens in Crowd rather than Confluence:
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the 'Security and Privacy' section, select the '*{{On}}*' radio button next to '*External user management*'.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you had [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203392832</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215516226</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215483620</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215516216</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone for Production Usage (ZIP Archive)*' file for *Confluence 3.2*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215483611</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">236619023</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository and [Crucible|http://www.atlassian.com/software/crucible] for piercingly insightful code reviews. Prepare to be blown away by FishEye/Crucible's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *40 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. Crucible will use this database as well. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.4/bin/createdb --owner fishuser --encoding utf8 fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye/Crucible database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye and Crucible

Requirements: *FishEye/Crucible {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheyecrucible}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheyecrucible}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FECRU_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheyecrucible}}.)
#* Copy the {{config.xml}} file from the root of your FishEye/Crucible installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{\lib}} directory as a sub-directory of your new {{FECRU_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye/Crucible from the command line by running {{bin\run.bat}} from your FishEye/Crucible installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye {excerpt-include:_DragonsVersionNumber-FishEye|nopanel=true}*' zip archive. This archive actually includes Crucible {excerpt-include:_DragonsVersionNumber-Crucible|nopanel=true} as well.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye/Crucible installation directory.
# Now you will create another directory where FishEye/Crucible will store local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheyecruclbie}}.
#* Create an environment variable called '{{FECRU_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FECRU_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye/Crucible:
#* Create a {{/lib}} directory as a sub-directory of your new {{FECRU_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye/Crucible from the command line by running {{./bin/run.sh}} from your FishEye/Crucible installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye/Crucible, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# The FishEye/Crucible set-up wizard will start.
#* If you already have a license key, click '*Enter existing license*'. Enter your FishEye license into the '*FishEye License Key*' field and your Crucible license into the '*Crucible License Key*' field. 
#* If you don't have a license key, click '*Obtain evaluation license*' and follow the instructions on screen. Ensure that you leave the '*Yes! Please include Crucible as part of this evaluation*' checkbox selected during the procedure.
# Choose an administration password, enter it and then enter it again to confirm it.
# Click '*Next*'.
# Click '*Add repository*' to exit the wizard.
# Log in to FishEye/Crucible when prompted.
# In the left-hand *'Admin'* menu, click '*Database*' under *Systems Settings*.
# Click '*Edit*' and enter the following details:
#* '*Type*' -- Select '*PostgreSQL*' from the '*Type*' dropdown list.
#* Driver Location -- Select '*User Supplied - FISHEYE_INST/lib*'.
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye/Crucible can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FECRU_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye/Crucible is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye/Crucible database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook FishEye/Crucible up to Crowd

Follow the steps below to hook FishEye and Crucible up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}. Do not close your FishEye/Crucible browser/tab.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
_Note: You only need to configure a FishEye application in Crowd. Crucible will share the authentication mechanism and integration that you set up with FishEye and Crowd._
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye/Crucible will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye/Crucible site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye/Crucible host name, excluding the "http://www." prefix and the ":8060" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your the FishEye/Crucible Admin screens in your FishEye/Crucible browser window/tab.
# In the left-hand *'Admin'* menu, click '*Authentication*' under *Security Settings*.
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
# Now you will grant {{charlie}} administrator rights in your FishEye instance.
# Log in to FishEye using the Crowd user you set up in Stage 1, i.e. '{{charlie}}'.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# In the left-hand *'Admin'* menu, click '*Administrators*' under *Security Settings*.
# The 'Manage Admin Users and Groups' screen will appear. Select {{charlie}} under '*Non-Admin Users*' and click '*Add >>*'  to grant {{charlie}} administrator rights.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 5. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# In the left-hand *'Admin'* menu, click '*Repositories*' under *Repository Settings*.
# Click the '*Add...*' button. The 'New Repository - Page 1 of 3' screen will appear. 
# Enter the following information:
#* Repository Type: {{Subversion}}.
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
# Click '*Next*' and enter the following information:
#* SVN URL: {{https://studio.plugins.atlassian.com/svn/}}.
#* Path: {{DRA}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Next*' and enter the following information:
#* Store Diff Info -- Select this checkbox.
#* Enable Repository After Adding -- Select this checkbox.
# Click '*Test Connection*' to verify that Subversion is properly connected to FishEye. Click '*Close*'.
# Click '*Add*'. The '*Repositories*' page will display the 'Dragons' repository.
# Click the '*Source*' tab at the top of the screen.
# Click the star symbol next to the '*Dragons*' repository to select it as a favourite.
# Click the FishEye logo at top left of the screen to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository. 
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS Feed*'.

(/) Click the changeset number ({{153936}}) from the activity stream or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+Completed+stage+5+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">236586401</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675116</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Ready, steady, tweet?}Please read the introduction [below|#introduction].
If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

Why would we ask you to undertake this quest?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can make the process better.
* We hope you'll have some *fun* along the way.
* It's another excuse to give away some *T-shirts*.

Setting up an integrated suite of Atlassian applications will give you awesome results. But we know that the setup process can be long and difficult. We want to improve the process and we'd like your feedback to help us do that.

We have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a T-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.  

h6. Getting Help

If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}

h4. Assumptions
Before you start, please note the following points:
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h4. Hardware requirements
{color:red}*(TBC)*{color}


[Read, steady, go|#go].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708176</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675197</id>
<property name="body"><![CDATA[{color:orange}*Problems?*{color} Please go immediately to the [Dragon Slayers' Forum].
{color:green}*Victory?*{color}&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Please continue.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708260</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520092</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to *Atlassian staff only*{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?._ 

Now that you have successfully set up your integrated Atlassian suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

h2. FAQ

Below are some frequently-asked questions that we have specifically chosen for you, about useful things you may want to do after completing your initial setup. If you do not see an answer to your question here, please try the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126] or consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

{children:excerpt=true}

{color:red}wait the cache refresh or create other users using the JIRA console. http://forums.atlassian.com/thread.jspa?messageID=257322031{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

IntelliJ and Eclipse connectors -- overview of what you can do, plus links to the installation guides. *Free!*


h2. Crucible

Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA



h2. Clover

Overview plus links to WAC page.
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487362</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">244384165</id>
<property name="body"><![CDATA[In this step you will create some data in JIRA, including a project and an issue, for use in the subsequent stages of this integration procedure. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}.
#** Key: {color:blue}{*}{{DRA}}{*}{color}.
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}.
#** Description: {{Atlassian Dragon Quest}}.
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}.
#** Description: {{Version 1.0}}.
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}.
#** Issue Type: {{Bug}}.
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}.
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}.
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top right of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}.
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the gadget directory.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. !DragIcon.png! Click the gadget title bar with the left mouse button then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
# Configure the 'Assigned to Me' gadget to point to your 'Dragons' project:
#* Refresh the dashboard, if necessary, to show the 'Number of Results' and other configuration fields in the gadget.
#* Leave the default values as configured for '*Number of Results*' and '*Columns to display*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the 'Projects' gadget:
#* Leave the default values as configured for '*Projects*', '*View*' and '*Number of Columns*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">244351464</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">240550299</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">240746508</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[fcalvoga]]></property>
<property name="creationDate">2011-05-04 10:37:43.202</property>
<property name="lastModificationDate">2011-05-04 10:37:43.202</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">215516361</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add two dynamic displays of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.1*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.2.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channels between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. You will also make a Confluence gadget available in JIRA, and make a JIRA gadget available in Confluence.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your Confluence server about your JIRA server. Open the '*Browse*' menu at the top of the Confluence screen and select '*Confluence Admin*'.
# The 'Administration Console' screen will appear. Click '*Trusted Applications*' under 'Administration' in the left-hand panel.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your JIRA site (e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Edit New Trusted Application' screen will appear. Enter the following information:
#* Name: {{JIRA}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
# Leave the other fields at their default values.
# Click '*Save*'.
# Now you will tell your JIRA server about your Confluence server. Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The JIRA Administration console will appear. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches -- Add the following value to a new line in the box, leaving the existing values in place too: {{127.0.0.1}} 
#* URL Paths to Allow -- Add the following value to a new line in the box, leaving the existing values in place too: {{/rest}}
# Leave the other fields at their default values.
# Click '*Add*'.
# Now you will make the Confluence 'Activity Stream' gadget available in JIRA, so that JIRA users will be able to add the gadget to their dashboards. Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Gadgets*'.
# The 'Confluence Gadgets' popup window will appear, with a list of the gadgets that Confluence makes available. Find the '*Activity Stream*' gadget and copy the URL from the '*Gadget URL*' link into your clipboard.
# Close the 'Confluence Gadgets' popup window.
# Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Add Gadget to Directory*'.
# The 'Add Gadget to Directory' popup window will appear. Paste the Confluence 'Activity Stream' gadget URL into the text box. The URL will look something like this:
{code:HTML}http://coopers:8090/rest/gadgets/1.0/g/com.atlassian.streams.confluence:activitystream-gadget/gadgets/conf-activitystream-gadget.xml{code}
# Click '*Add Gadget*'.
(/) The Confluence gadget is now available in your JIRA gadget directory. You have not yet added it to your JIRA dashboard. We will do that in a later step.
# Now you will make the JIRA 'Pie Chart' gadget available in Confluence, so that Confluence users will be able to add the gadget to their wiki pages. Still on the JIRA 'Gadget Directory' screen, enter 'pie' into the search box at top right.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Pie Chart*' gadget and and copy the URL from the '*Gadget URL*' link.
# Go to your Confluence browser window, open the '*Browse*' menu and click '*Confluence Admin*'.
# The Confluence 'Administration Console' will appear. Click '*External Gadgets*' under 'Configuration' in the left-hand panel.
# The 'External Gadgets' screen will appear. Paste the JIRA 'Pie Chart' gadget URL into the '*Gadget Specification URL*' text box. The URL will look something like this:
{code:html}http://coopers:8080/rest/gadgets/1.0/g/com.atlassian.jira.gadgets:pie-chart-gadget/gadgets/piechart-gadget.xml{code}
# Click '*Add*'.
{panel}


+_Screenshot 3 (click to enlarge): Adding Confluence as a trusted application in JIRA_+
\\
\\
!JIRATrustedApp.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): The 'External Gadgets' setup screen in Confluence, with the 'Pie Chart' gadget_+
\\
\\
!ConfluenceExternalGadgets.png|thumbnail!
\\
\\
The JIRA documentation has the details about [trusted applications|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}*Charlie badge*{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add a JIRA Gadget and Macro to your Confluence Page

Now you can put some interesting JIRA content into the space home page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Copy the following text and paste it into your wiki page:
{quote}
h3. JIRA pie chart
xxx
h3. JIRA issues
xxx
{quote}
# Now you will add a JIRA gadget to your Confluence page, displaying a pie chart of the issues in your JIRA Dragons project.
#* Select the '*xxx*' on the line below the heading '*JIRA pie chart*'.
#* Click the '*Insert/Edit Macro*' icon !InsertMacroIcon.png! in the editor toolbar.
#* The '*Select Macro*' popup window will appear. Enter 'pie' into the search textbox at top right.
#* The list of macros and gadgets will change, to show only those that match your search term. Click the '*Pie Chart*' macro. (This is actually the gadget.)
#* The 'Insert "Pie Chart" Macro' screen will appear. Enter 'dra' into the '*Project or Saved Filter*' text box.
#* A selection list will drop down. Click 'Dragons (DRA)' under 'Projects'.
#* Change '*Statistic Type*' to 'Resolution'.
#* Change '*Refresh Interval*' to 'Every 15 Minutes'.
#* Click '*Save*'.
#* The preview pane will show the pie chart of JIRA issues from your JIRA Dragons project. You should see a total of two issues, one fixed and one unresolved. Click '*Insert*'.
#* Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Go to your JIRA browser window.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the 'XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Select the '*xxx*' on the line below the heading '*JIRA issues*' and replace it by pasting the content of your clipboard, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
#* Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL.
# Save the page.
{panel}

+_Screenshot 5 (click to enlarge): Your updated Dragons home page in Confluence_+
\\
\\
!ConfluenceDragonSpaceV2.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, move your cursor over the '*Gadget URL*' and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}*red*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 6 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboardStage4.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">215483799</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">219252434</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">105447432</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[tmoore]]></property>
<property name="creationDate">2010-07-07 19:36:48.953</property>
<property name="lastModificationDate">2010-07-07 19:36:48.953</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520170</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to *Atlassian staff only*{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?._ 

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

h2. FAQ

Below are some specific frequently-asked questions about useful things you may want to do after completing your initial setup. If you do not see an answer to your question here, please try the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126] or consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

{children:excerpt=true}

{color:red}wait the cache refresh or create other users using the JIRA console. http://forums.atlassian.com/thread.jspa?messageID=257322031{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

IntelliJ and Eclipse connectors -- overview of what you can do, plus links to the installation guides. *Free!*


h2. Crucible for Code Reviews

Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA



h2. Clover for Code Coverage

Do you want to know how much of your code is covered... [Clover] 

Overview plus links to WAC page.
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487446</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520181</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

h2. Frequently Asked Questions (FAQ)

Below are some questions that dragon slayers have asked after completing their initial setup, and our answer to each question. If you have a question that is not answered here, please try the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], refer to the in-depth [documentation|ALLDOC:] or consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

{children:excerpt=true}

{color:red}wait the cache refresh or create other users using the JIRA console.{color} {color:red}[http://forums.atlassian.com/thread.jspa?messageID=257322031]{color}

h2. Using JIRA, Bamboo and FishEye within Eclipse

Do you develop in [Eclipse|http://www.eclipse.org/]? Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within your IDE. The [Atlassian Connector for Eclipse|http://www.atlassian.com/software/ideconnector/eclipse.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h4. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector].

h4. More about the Atlassian Connector for Eclipse

|| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. |
|| User Guide | Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines.
\\
\\
Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
\\
With [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye or send a FishEye link to your colleagues. |

h2. Using JIRA, Bamboo and FishEye within IntelliJ IDEA

Do you develop in [IntelliJ IDEA|http://www.jetbrains.com/idea/]? Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within your IDE. The [Atlassian Connector for IntelliJ IDEA|http://www.atlassian.com/software/ideconnector/intellij.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h4. In a Hurry?

Follow our [connector installation guide for IntelliJ IDEA|IDEPLUGIN:Installing the IntelliJ Connector].

h4. More about the Atlassian Connector for IntelliJ IDEA

|| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation instructions|IDEPLUGIN:Installing the IntelliJ Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
xx |


h2. Crucible for Code Reviews

Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA



h2. Clover for Code Coverage

Do you want to know how much of your code is covered... [Clover]

Overview plus links to WAC page.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487457</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520180</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

h2. Frequently Asked Questions (FAQ)

Below are some questions that dragon slayers have asked after completing their initial setup, and our answer to each question. If you have a question that is not answered here, please try the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], refer to the in-depth [documentation|ALLDOC:] or consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

{children:excerpt=true}

{color:red}wait the cache refresh or create other users using the JIRA console.{color} {color:red}[http://forums.atlassian.com/thread.jspa?messageID=257322031]{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

Do you develop in [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]? Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within your IDE. The [Atlassian Connector for Eclipse|http://www.atlassian.com/software/ideconnector/eclipse.jsp] and the [Atlassian Connector for IntelliJ IDEA|http://www.atlassian.com/software/ideconnector/intellij.jsp] are *free*\!

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h6. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector] or for [IntelliJ IDEA\|\|IDEPLUGIN:Installing the IntelliJ Connector|].

h6. More about the Atlassian Connector for Eclipse

|| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. ||
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. ||
|| User Guide | Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines.
\\
\\
Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
\\
With [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye or send a FishEye link to your colleagues. |


h2. Crucible for Code Reviews

Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA



h2. Clover for Code Coverage

Do you want to know how much of your code is covered... [Clover]

Overview plus links to WAC page.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487456</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675224</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install JIRA

# *Download JIRA* \- standalone only.
# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible - maybe we should do more work in the Crowd step to make this easier?)
# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}
# *JIRA Admin Setup*
## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
# (/) *Victory* \- you can see your project dashboard with 2 gadgets on it\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 3 - Install GreenHopper into JIRA]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708287</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200675229</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA] for bug tracking and issue management.

*Time estimate:* This step will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start pgAdmin III.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Download the JIRA 'Standalone Windows Installer' ({{.exe}}) file  for *JIRA 4.0.0*.
# Run the installer {{.exe}} file, entering the following information as prompted:
#* Destination directory -- This is where the JIRA installation files will be stored. JIRA will also write its log files to this directory. The default value is the Windows {{Program Files}} folder. You can change this if necessary, e.g. if you or JIRA will not have permission to update that directory.
#* JIRA home -- This is where JIRA will store its configuration files and other data. The default value is the Windows {{Program Files}} folder. You can change this if necessary, e.g. if you or JIRA will not have permission to update that directory.
#* We recommend that you choose to install JIRA as a service when prompted.
# *De-select* the option to launch JIRA in your browser, because we still have some configuration to perform. {color:red}*TBC -- I actually left the option ticked*{color}
# Click '*Finish*'.
# Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\apache-tomcat\common\lib}} directory. {color:red}*TBC -- I haven't done this yet*{color}
# Start your Crowd server by going to the directory where you unzipped Crowd and running {{start_crowd.bat}}. {color:red}*TBC -- Don't need to do this if auto-started.*{color}
{panel}
{expand}

{color:red}*TBC -- Mac still to be done.*{color}
{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the 'Standalone (TAR.GZ archive)' file for *JIRA 4.0.0*.

# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{color:red}*TBC -- *nix still to be done.*{color}
{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/crowd/CrowdDownloadCenter.jspa].
# Click the 'Linux' tab and download the 'Standalone (TAR.GZ Archive)' file for *Crowd 2.0.1*.
(If the file shown is a later version, please click '*downloads archive*' and find the file for Crowd 2.0.1.)
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Crowd where to find its Crowd Home directory, by editing the {{crowd-init.properties}} file as described in the [installation guide|CROWD:Installing Crowd and CrowdID#homedir].
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html].
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar]. {color:red}*(TBC)*{color}
# Add the PostgreSQL JDBC driver JAR to your {{\{CROWD_INSTALL\}/apache-tomcat/common/lib}} directory.
# Start your Crowd server by going to the directory where you unzipped Crowd and double-clicking {{start_crowd.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [Crowd documentation|CROWD:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Include the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key. 





# *Set up JIRA* \- use default directories for everything, use Postgres, disable email.
# *Configure JIRA* \- set up JIRA-Crowd integration (the simplest way possible)


# (/) *Victory* \- you can login to JIRA as {color:blue}{*}charlie{*}{color}



## configure JIRA to use the wiki renderer for comments and descriptions (for applinks)
## configure JIRA to have a base URL (for applinks)
## Turn on time tracking
## Turn on the public API
# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200708293</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520186</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

h2. Frequently Asked Questions (FAQ)

Below are some questions that dragon slayers have asked after completing their initial setup, and our answer to each question. If you have a question that is not answered here, please try the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], refer to the in-depth [documentation|ALLDOC:] or consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

{children:excerpt=true}

{color:red}wait the cache refresh or create other users using the JIRA console.{color} {color:red}[http://forums.atlassian.com/thread.jspa?messageID=257322031]{color}

h2. Using JIRA, Bamboo and FishEye within Eclipse

Do you develop in [Eclipse|http://www.eclipse.org/]? Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within your IDE. The [Atlassian Connector for Eclipse|http://www.atlassian.com/software/ideconnector/eclipse.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h4. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector].

h4. More about the Atlassian Connector for Eclipse

|| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
\\
With [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye or send a FishEye link to your colleagues.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |

h2. Using JIRA, Bamboo and FishEye within IntelliJ IDEA

Do you develop in [IntelliJ IDEA|http://www.jetbrains.com/idea/]? Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within your IDE. The [Atlassian Connector for IntelliJ IDEA|http://www.atlassian.com/software/ideconnector/intellij.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h4. In a Hurry?

Follow our [connector installation guide for IntelliJ IDEA|IDEPLUGIN:Installing the IntelliJ Connector].

h4. More about the Atlassian Connector for IntelliJ IDEA

|| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation instructions|IDEPLUGIN:Installing the IntelliJ Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
xx |


h2. Crucible for Code Reviews

Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA



h2. Clover for Code Coverage

Do you want to know how much of your code is covered... [Clover]

Overview plus links to WAC page.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487463</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">204081934</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S2*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">204049417</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649408</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Add a JIRA-FishEye Application Link 

In this step you will link your JIRA and FishEye servers by creating an application link.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye Admin screen.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your FishEye site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'. The application link will be created and displayed on the 'Configure Application Links' page.
# Click '*JIRA Settings*' next to the '*Your Company JIRA*' application link.
# Change the '*Application Name*' to {{Dragons JIRA}} and click '*Update*'.
# Click '*JIRA Settings*' next to the '*Dragons JIRA*' application link.
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox.
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Adding JIRA as a trusted application in FishEye{+}_ 

!FishEyeCrucibleAppLinks.png|thumbnail!

h2. Step 2. Link a FishEye Repository to a JIRA Project and Subscribe JIRA to FishEye Gadgets

In this step you link your FishEye repository to your JIRA project via an "entity link". This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and click '*Application Links*' from the menu that appears.
# Click '*Add Link*' then click '*Dragons JIRA (JIRA)*' from the dropdown menu.
# Click '*Create*'. The FishEye repository-JIRA project link will be created.
# Now you will make your FishEye gadgets available in JIRA, so that JIRA users will be able to add any FishEye gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060]}} or {{[http://www.foobar.com:8060]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}


h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Edit Primary Configuration*'.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses for your FishEye/Crucible instance (separated by commas), e.g. 127.0.0.1, 172.20.5.95.
You can find the IP addresses for your FishEye/Crucible instance by viewing the 'Remote Addresses' tab for the application in Crowd.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses for your JIRA instance (one per line), e.g. 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths (one per line): {{/plugins/servlet/streams}}, {{/sr/jira.issueviews:searchrequest}}, {{/secure/RunPortlet}}, {{/rest}}, {{/rpc/soap}}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.


Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616648</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">238354643</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">238419985</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-04-23 23:06:34.400</property>
<property name="lastModificationDate">2011-04-23 23:06:34.400</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676886</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

# Install Confluence 3.0.1.

Link to docs....

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

# Configure the base URL.



{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

xxxxxxxxxxxxxxx


Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Create a Wiki space


# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)


h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710031</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">238354644</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">238419986</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-04-23 23:06:52.822</property>
<property name="lastModificationDate">2011-04-23 23:06:52.822</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676885</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
{panel}


{color:red}*TBC{color}
# Create a dashboard: 
\- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
Does the 'project' gadget exist? Is it the same as the 'projects' gadget?


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710030</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">239632385</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">239599617</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[blakeb@httpfactory.com]]></property>
<property name="creationDate">2011-05-02 23:28:13.931</property>
<property name="lastModificationDate">2011-05-02 23:28:13.931</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">204085626</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will create a wiki space and add a dynamic list of JIRA issues to a wiki page. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1* or *3.0.2*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.2*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.2*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">204053349</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">238354615</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">238419976</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[smaddox]]></property>
<property name="creationDate">2011-04-23 22:52:21.680</property>
<property name="lastModificationDate">2011-04-23 22:52:21.680</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676840</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709980</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">241600191</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], where you're sure to meet other battle-weary dragon slayers.{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">241567609</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">241600204</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column}
_Beware, all ye who enter, for here be dragons\! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com]&nbsp;for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also see [answers|https://answers.atlassian.com/tags/integration/] from the community, or search the [forum of past dragon slayers|http://forums.atlassian.com/forum.jspa?forumID=126].{note}
{anchor:go}

h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! %23AtlassianDragons http://atlss.in/dragonquest].{tip}
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare\!
{children}
{column}
{column}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons}
{column}
{section}

{anchor:introduction}

h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}

h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for code reviews.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions

* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed].
** If you already have Confluence, Crowd, FishEye, Crucible or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will set up all the applications on the same machine.

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements

* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 8 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Executable].
(i) If you wish to use *Maven 2* and do not yet have it installed, we recommend the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment]. The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation JAR ({{javax.activation:activation:jar}}) which you will need for a successful Maven build. If you would like to download the Java Activation JAR separately instead, see the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA].
* *Java Development Kit:* You will need Oracle JDK 1.6 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes

* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">241567622</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">241600189</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the *standalone* distribution of the latest JIRA release. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on. Please don't try to battle on alone. Instead, ask for help immediately. You can also seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], where you're sure to meet other battle-weary dragon slayers.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http://atlss.in/dragonquest].{tip} 
{tip:title=Follow yon brave dragon slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye and Crucible]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Get JIRA and Crucible Talking]
* [Dragons Stage 8 - Install Bamboo]
* [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory]
* [After Dragons]

{column}
{column:width=50%}
{widget:url=http://search.twitter.com/search?q=AtlassianDragons} 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">241567607</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676816</id>
<property name="body"><![CDATA[!DragonBaby-80px.png|align=left! Beware, all ye who enter, for here there be dragons! This is the starting point for the Atlassian Dragon Quest. 

By the time you reach the end of this quest, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian Dragon Slayer T-shirt].  

{anchor:go}
h2. Rushing into the Dragon's Lair

{tip:title=Ready, steady, tweet?}Please read the introduction [below|#introduction].
If you like, you can [tweet|http://twitter.com/home?status=Fare ye well, all brave souls and true. I'm starting the Atlassian Dragon Quest! @AtlassianDragons] that you're starting the Atlassian Dragon Quest.{tip}

Now you're ready to start at stage 1. Meet the dragon if you dare!
{children}

{anchor:introduction}
h2. What's This All About?

Why would we ask you to undertake this quest?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can make the process better.
* We hope you'll have some *fun* along the way.
* It's another excuse to give away some *T-shirts*.

Setting up an integrated suite of Atlassian applications will give you awesome results. But we know that the setup process can be long and difficult. We want to improve the process and we'd like your feedback to help us do that.

We have put together the basic instructions for integrating a suite of Atlassian applications. Each setup step is a stage in a game called '*Here Be Dragons*'. Join us in the game, defeat the Atlassian Integration Dragon and emerge relatively unscathed with a T-shirt to prove you did it.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Crucible|http://www.atlassian.com/software/crucible/] for peer code review.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage analysis.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.

You'll be able to use integrated content via:
* AppLinks xxxxxxx 
* Activity Stream ?????
* Gadgets xxxxxxx
* xxxxxxxxxxx

You will also play some cool Flash games along the way. If you slay the final dragon, you can win a free, limited-edition [Atlassian Dragon Slayer T-shirt] too.  

h6. Getting Help

If you run into problems at any stage of the game, please go immediately to the [Dragon Slayers' Forum]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *6 hours* {color:red}*(TBC)*{color} to complete all the stages.

h2. Getting Kitted Out

{color:red}PICTURE of basic Charlie here{color}
Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the game.
** If you have JIRA but nothing else, please do continue with the game. 
** If you already have one of the Atlassian applications as well as JIRA, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* The setup process is divided into stages. At the end of each stage is a Flash game. These are fun :) and we do hope you'll play them and give us feedback on the games too. But they are not essential to the process of setting up your integrated development suite.

h4. Hardware Requirements
{color:red}*(TBC)*{color}

h4. Software Requirements
* Please check your *unzip program* before extracting any of the Atlassian downloaded zip files. Some unzip programs cause errors.
** *Linux* or *Unix* users can use any unzip program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]


[Read, steady, go|#go].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709954</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">241600187</id>
<property name="body"><![CDATA[{color:#6e2e28}*Problems?*{color} Please [raise a support ticket|https://support.atlassian.com] for the product you're stuck on, or try the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
{color:green}*Victory?*{color} Please continue.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">241567605</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427284</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [here|Here Be Dragons|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] if you complete all the steps.
{column}
{section}

(i) If you do not yet have JIRA installed, please ignore this page and start at [Here Be Dragons] instead.

h2. Assumptions and Prerequisites

Before you start, please note the points below.
* *Overall requirements:* Check the [hardware and software requirements|Here Be Dragons#introduction].
* *JIRA Standalone:* You will need the standalone distribution of JIRA 4.0. If you have a WAR distribution, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* These instructions assume that your JIRA is running on *port 8080* (JIRA's default port). If not, please adjust the instructions accordingly.

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note}

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip} 

You're ready to start stage 1. Meet the dragon if you dare! Follow these stages first:
* [Dragons with JIRA Stage 1 - Install Java, PostgreSQL and Crowd]
* [Dragons with JIRA Stage 2 - Set Up JIRA]

Then join the rest of the brave dragon slayers at stage 3:
* [Dragons Stage 3 - Install GreenHopper into JIRA]
* [Dragons Stage 4 - Install Confluence]
* [Dragons Stage 5 - Install FishEye]
* [Dragons Stage 6 - Get JIRA and FishEye Talking]
* [Dragons Stage 7 - Install Bamboo]
* [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory]

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394671</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427286</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_01.png!
_Beware, all ye who enter, for here there be dragons. You are embarking on stage 1 of the [Atlassian Dragon Quest|Dragon Slayers with JIRA Already Installed]._

In this stage, you will install Java and a database (PostgreSQL) to hold the data for your Atlassian applications. Then you will set up [Atlassian Crowd|http://www.atlassian.com/software/crowd] for centralised user management and single sign-on (SSO).

(i) This procedure assumes that you *already have JIRA installed*. If you do not yet have JIRA, please ignore this page and start at [Here Be Dragons] instead. 

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Check your Java Development Kit

{include:_Dragons JDK|nopanel=true}

h2. Step 2: Install your PostgreSQL Database Server

Below are the instructions for installing and setting up a PostgreSQL database server. If your JIRA installation is already using a different supported database server and you have a good technical knowledge of that server, you can choose to stick with it. However, for the purposes of this integrated setup exercise we do recommend PostgreSQL. Note that you will need the database server to hold the data for the other Atlassian applications that you will set up in later stages of this integration exercise.

{include:_Dragons PostgreSQL|nopanel=true}

{anchor:database}
h2. Step 3. Create your Crowd Database in PostgreSQL

{include:_Dragons Crowd Database|nopanel=true}

{anchor:install-crowd}
h2. Step 4. Install Crowd

{include:_Dragons Install Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 5. Set Up Crowd

{include:_Dragons Set Up Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

{include:_Dragons Crowd Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge01.png!
{column}
{column} 
h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=W00t+dragon+slayers+one+and+all!+I've+completed+stage+1+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons with JIRA Stage 2 - Set Up JIRA]. 
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394673</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676869</id>
<property name="body"><![CDATA[You are embarking on stage 9 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you. Take heart, noble dragon slayer, and proceed with a will.

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Bamboo

# Install Bamboo
# Configure the base URL.
# Configure Bamboo to use Crowd
# *Create a project* \- create a project and run a sample build

(/) *Victory:*
* You can now see a single build that has successfully run.
* You can link from Bamboo straight through to FishEye (Edwin to demo)


{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 9 of the Atlassian Dragon Quest. I own Bamboo! @AtlassianDragons].{tip} 

[Dragons Stage 10 - Install Clover]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710014</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676867</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your JIRA Database in PostgreSQL

xxxxxxxxxxxx

h2. Step 2. Install Confluence

# Install Confluence 3.0.1.

Link to docs....

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

# Configure the base URL.



{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

xxxxxxxxxxxxxxx


Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Create a Wiki space


# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)


h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710012</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203431123</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203398694</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">205816509</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETS:Gadgets and Dashboards Development Hub]
* [REST APIs|DEVNET:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse] --- see links on home page
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">205783744</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">169345356</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">169377835</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[emanueleq]]></property>
<property name="creationDate">2008-10-15 10:47:50.610</property>
<property name="lastModificationDate">2008-10-15 10:47:50.610</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676853</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
{panel}


# Create a dashboard: 
\- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709997</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037359</id>
<property name="body"><![CDATA[{section}
{column:width=50%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding information about how your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}
{column:width=50%}
{panel:title=News, Links and Resources|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Want to know more? Take a look at our [Links and Resources], or follow the links in the table of contents on the left.
{panel}
{column}
{section}

{panel:title=Atlassian Integration Points|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:page=Integration Points|depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004762</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677023</id>
<property name="body"><![CDATA[Congratulations! Stage 12 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy! 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Add a Bamboo Gadget to JIRA
# Add the 'Bamboo Status' gadget to your dashboard

h2. Add a Clover Gadget to JIRA
# Add the Clover Code Coverage gadget to your dashboard

(/) *The battle is won, the dragon is slain:*
* In JIRA your dashboard now has 6 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye, 1 Bamboo, 1 Clover)

{include:_Dragons Problem or Victory|nopanel=true}


h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Get a T-Shirt :)


{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=Victory! Dragons hold no fear for me. I've completed the Atlassian Dragon Quest. Where's my T-shirt?  @AtlassianDragons].{tip} 

*Congratulations!*
Send us a screenshot of your dashboard, and we'll send you an [Atlassian Dragon Slayer T-shirt].


]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710193</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446641</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The '*Link to another server -- Step 1*' dialogue will appear. Enter the following information:
#* Server URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
# Click '*Next*'.
# The '*Link to another server -- Step 2*' dialogue will appear. Enter the following information:
#* Application Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* Application Name: {color:blue}*{{JIRA}}*{color}.
# Click '*Create*'. The 'Configure Application Links' page will display the new application link to your JIRA server.
# Now you will configure authentication for the application link. Click '*Configure*' next to your new application link.
# The '*Configure Dragons JIRA*' screen will appear. Click '*Incoming Authentication*' in the left-hand menu.
# The outgoing authentication page will appear with the '*Trusted Applications*' tab active. Click '*Configure*' then '*Apply*' to enable trusted applications for incoming authentication.
# Do the same for incoming authentication. Click '*Close*' when done.
# Click '*JIRA Settings*' next to your '*Dragons JIRA*' application link
# The 'Update JIRA Server' screen will appear. Tick the '*Include in Activity Streams*' checkbox and click '*Save*'. 
# Now you will set up an entity link from your FishEye repository to your JIRA project, to enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. 
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'. 
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and click '*Application Links*' from the menu that appears.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' then click '*Dragons JIRA (JIRA)*' from the dropdown menu.
# The 'Enter link details' screen will appear. Enter the following details:
#* Key: {{{color:blue}*DRA*{color}}}
#* Alias: {{{color:blue}*Dragons*{color}}}
# Click '*Create*'. 
# Click the '*Server*' link in the left-hand menu under 'Global Settings'. 
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel under 'System'.
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
#* URL Paths to Allow: Add these paths to the existing paths, one per line:
#** {{/plugins/servlet/applinks/whoami}}
#** {{/secure/CreateSubTaskIssueDetails.jspa}}
#** {{/browse}}
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414069</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">211714236</id>
<property name="body"><![CDATA[{section}
{column:width=50%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding information about how your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}
{column:width=50%}
{panel:title=Links and Resources|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Want to know more? Take a look at our [Links and Resources], or follow the links in the table of contents on the left.
{panel}
{column}
{section}

{panel:title=Atlassian Integration Points|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:page=Integration Points|depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">211648721</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677009</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
{panel}


{color:red}*TBC{color}
# Create a dashboard: 
\- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
Does the 'project' gadget exist? Is it the same as the 'projects' gadget?


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710178</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">169345186</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">169377818</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[sob@ekor.no]]></property>
<property name="creationDate">2008-10-04 02:21:27.454</property>
<property name="lastModificationDate">2008-10-04 02:21:27.454</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649506</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You are embarking on stage 8 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.4/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-{excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}-standalone-windows-x32.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}}\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows by running {{\{BAMBOO_INSTALL\InstallAsService.bat}} If you are running Bamboo in Windows Vista or Windows 7, you may need to run this file in administrative mode by right clicking it and selecting 'Run as administrator'.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\StartBamboo.bat}} You may also need to run this file in administrative mode as described in the previous step.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo {excerpt-include:_DragonsVersionNumber-Bamboo|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

The instructions below assume that you already have a build tool set up. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using Maven 2.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Set up your Maven 2 environment:
#* If you do not yet have Maven 2 installed, we recommend that you download and install the [Atlassian Plugin SDK|DEVNET:Setting up your Plugin Development Environment] (note, you do not need to configure an IDE). The SDK includes Maven 2 and a correctly-configured Maven {{settings.xml}} file, as well as a number of shell scripts to speed up and simplify plugin development. It also includes the Java Activation and other JARs that you will need for a successful Maven build. 
#* If you already have Maven 2, please ensure that you have the required additional JARs. See the [FAQ|DEVNET:Maven Cannot Find Java Mail, Java Activation or JTA] for information on downloading these JARs.
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. 
#* Enter your license key. If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Choose the '*Custom Installation*' setup method.
# Detailed instructions on the custom installation setup method are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Bamboo Configuration*' information as follows:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Choose {{External Database}} for your database configuration and ensure that {{PostgreSQL 8.2 and above}} is selected in the dropdown menu.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Click '*Finish*'.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list on the left, to see if your build tool is included along with the default tools of '*Script*' and '*Bash*'. For this integration exercise, we assume that you are using Maven 2. In that case, you should see '*Maven 2*' listed in the tabs on the left.
# If your builder is not included, click '*Add builder as a server capabilities*' near the top of the page. The 'Add Capability' panel will appear. Enter the following information:
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.x}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX). 
If you have installed the Atlassian PDK, Maven can be found in a sub-directory under your Atlassian PDK installation directory. For example, {{C:\Atlassian\atlassian-plugin-sdk-3.2\apache-maven}} (Windows) or {{/usr/local/Atlassian/atlassian-plugin-sdk-3.2/apache-maven}} (UNIX).
#* Click '*Add*'
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the tabs on the left, to check that your JDK is included. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a tab on the left '*JDK 1.6.x_xx (JRE)*', as well as a '*JDK*' and a '*JDK 1.6*' tab. Ensure that the Java Home is pointing to your JDK directory, not your JRE directory.
# If your JDK is not included, click '*Add JDK as a server capabilities*'. The 'Add Capability' panel will appear. Enter the following information.
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
#* Click '*Add*':
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, excluding the "http://www." prefix and the ":8085" port number. e.g. {{foobar.com}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}. You may need to run this program in administrative mode as described [above|#install].)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-2.0.7.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.2.2.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment out all other lines of code. The code below should be the only lines of uncommented code in your file, after you have finished making these changes: 
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.v22.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
(i) If you experience problems with the Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create Plan' screen will appear. Click '*Create a New Plan*'.
# The 'Create a New Plan' screen will appear. Enter the following information in the 'Plan Configuration' section:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
#* Repository: {{Subversion}}.
#* Repository URL: {{[https://studio.plugins.atlassian.com/svn/DRA/trunk]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
# Leave the rest of the fields in the 'Plan Configuration' section at their default values.
# Enter the following information in the 'Job Configuration' section:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* Goal -- Change {{clean test}} to {{clean}}.
#* Build JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
#* The build will produce test results -- Uncheck this checkbox.
# Leave the rest of the fields at their default values and click '*Create*'.
# Bamboo will immediately start a build, based on the plan that you have just created. The build may take a few minutes to complete.
# When the build has finished, the 'Plan Summary' for the 'Main' plan in the 'Dragons' will be displayed. The 'Recent History' will have a link to build result, '{color:blue}*{{DRAG-MAIN-1}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress1-v5.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete1-v5.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* On the Bamboo dashboard, click '*\#1*' in the '*Recent History*' to open the build result summary.
* Click '*Comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Add*'.

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+8+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest]. 
* Go to [Dragons Stage 9 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616753</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677069</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/ConfluenceDownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-application.properties}}.
#* Complete the following line:
{{confluence.home =}}
For example:
{{confluence.home = C:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because JIRA will be running on the same physical hardware as Confluence, you need to ensure that the application server ports for JIRA and Confluence are different. To do this:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}} and modify the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Connect Confluence to your PostgreSQL database: *(Move to Set Up Confluence procedure)*
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
#* Start your JIRA server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
#* 
{panel}
{expand}



{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard, then hook Confluence up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to Confluence.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide]. Here are the things you need to know for our Dragon Quest:

(Updated to here so far.)

#* Base URL -- Enter the full website address at which Confluence is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

xxxxxxxxxxxxxxx


Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Create a Wiki space


# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)


h2. Victory!

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710241</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677063</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
#* Click '*Dashboards*' at top left of your JIRA screen.
#* Click '*Tools*' at top left of the screen, then '*Create Dashboard*'.
#* The 'Create New Dashboard' screen will appear. Enter the following information:
#** Name: {color:blue}*{{Dragon Development Dashboard}}*{color}
#** Description: {{A dashboard for dragon slayers, fire fighters and like-minded brave souls.}}
#* Leave the other fields at their default values and click the '*Add*' button at the *bottom* of the 'Create New Dashboard' screen (not the one next to 'Add Shares').
# You now have a new, empty dashboard. Add the 'Projects' gadget to the dashboard:
#* Click '*Add Gadget*'.
#* The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'projects' into the search box at top right of the Gadget directory screen.
#* The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Projects*' gadget and click '*Add it Now*. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find and add the '*Assigned To Me*' gadget in the same way.
# Click '*Finished*' to go back to your dashboard.
# Drag the 'Assigned to Me' gadget to the top right of your dashboard:
#* Move your mouse pointer over the gadget's blue title bar.
#* The cursor icon will change to a four-pointed arrow. (color:red}pic here{color}. Click with the left mouse button, then drag the gadget to the right. Drop it in the space labelled 'Drag your gadget here.'
{panel}


{color:red}
Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
{color}


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710236</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037343</id>
<property name="body"><![CDATA[{color:red}*NOTE --- BIG UGLY HEADING:* This page is a DRAFT and visible to *Atlassian staff only* We'll publish it (and remove this BIG UGLY NOTE) when it's been reviewed and declared worthy.
{color}

Atlassian offers a fully hosted development platform called [JIRA Studio|http://www.atlassian.com/hosted/studio/]. Based on [JIRA|http://www.atlassian.com/software/jira], the popular issue tracker and workflow management tool, JIRA Studio adds industry standard revision control, repository viewer, wiki, and code review, all in one seamless hosted experience.

If you prefer, you can download and install the JIRA Studio components yourself. Below is an overview of the steps you need to take, with links to the detailed installation and configuration guides for each component.

{color:red}Add steps and links here.{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004746</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037348</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]
* [Beyond JIRA|http://www.atlassian.com/beyond/]
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
Click a news item below to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

{blog-posts:5|content=titles}

h2. Integration Points

Here are a few of the ways our products work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004751</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677039</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
{panel}


{color:red}*TBC{color}
# Create a dashboard: 
\- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
Does the 'project' gadget exist? Is it the same as the 'projects' gadget?


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710210</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">203623409</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">203718688</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[gul]]></property>
<property name="creationDate">2009-10-13 03:44:47.380</property>
<property name="lastModificationDate">2009-10-13 03:44:47.380</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037352</id>
<property name="body"><![CDATA[{section}
{column:width=50%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding information about how your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}
{column:width=50%}
{panel:title=News, Links and Resources|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Want to know more? Take a look at our [News, Links and Resources], or follow the links in the table of contents on the left.
{panel}
{column}
{section}

{panel:title=Atlassian Integration Points|borderStyle=solid\|borderColor=#ccc \|titleBGColor=#5cc35c\|bgColor=#ddfddd}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:page=Integration Points|depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004755</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037358</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]

Looking for more information? Try these links:
* [Overview of Atlassian Applications|http://www.atlassian.com]
* [Beyond JIRA|http://www.atlassian.com/beyond/]
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* Try our [discussion forum|http://forums.atlassian.com/forum.jspa?forumID=125] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}

{column:width=60%}
h2. About Integrating your Atlassian Applications

Using our open API and scores of plugins, your Atlassian applications will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian applications:
* The [integration points|Integration Points] show the many different ways the applications work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian applications in other ways.

h2. Latest News
Click a news item below to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

{blog-posts:5|content=titles}

h2. Integration Points

Here are a few of the ways our applications work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004761</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037357</id>
<property name="body"><![CDATA[{section}
{column:width=50%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding information about how your [Atlassian applications|http://www.atlassian.com] work together.
{panel}
{column}
{column:width=50%}
{panel:title=News, Links and Resources|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
Want to know more? Take a look at our [News, Links and Resources], or follow the links in the table of contents on the left.
{panel}
{column}
{section}

{panel:title=Atlassian Integration Points|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Here are some of the ways your Atlassian applications can work together. Click an item to see more details of the integration point and how you can make it happen.
{children:page=Integration Points|depth=1|style=h5|excerpt=true}
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166004760</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677047</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
# Create a new dashboard for all your dragon-related tasks, issues and general fire fighting:
{panel}


{color:red}*TBC{color}
# Create a dashboard: 
\- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
Does the 'project' gadget exist? Is it the same as the 'projects' gadget?


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710219</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">150405121</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[imranaziz]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-03-25 11:40:04.956</property>
<property name="lastModificationDate">2008-07-04 08:44:32.015</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649459</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Subtasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable subtasks for Crucible. This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will reload and the 'Subtask Settings' section will display different fields. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with subtasks configured+_ 

!CrucibleJIRASettingsSubtasks-v5.png|thumbnail!


Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and select '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# Click '*This comment does not mention dragons*' in the '*Latest Comment*' column on the review details screen.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616700</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649454</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Subtasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable subtasks for Crucible. This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will reload and the 'Subtask Settings' section will display different fields. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with subtasks configured+_ 

!CrucibleJIRASettingsSubtasks-v5.png|thumbnail!


Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# Click '*This comment does not mention dragons*' in the '*Latest Comment*' column on the review details screen.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616695</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209617512</id>
<property name="body"><![CDATA[Requirements: *PostgreSQL version 8.3.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Download [PostgreSQL|http://www.postgresql.org/download/] -- Get the latest 8.3.x. For the simplest installation, choose one of the one-click installers.
# Install PostgreSQL. If you chose one of the PostgreSQL one-click installers, this is simple: Run the executable that you downloaded and follow the prompts. If necessary, you can refer to the [PostgreSQL installation instructions|http://www.enterprisedb.com/learning/pginst_guide.do]. 
# Enter a password for the super user ('postgres').
# Accept the default port {{5432}}.
# Accept all the other default settings.
# Download the PostgreSQL JDBC driver from [http://jdbc.postgresql.org/download.html] and save it locally for later use. 
#* If you have installed JDK 6.x, get [JDBC4 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc4.jar].
#* If you have JDK 5.x, get [JDBC3 Postgresql Driver, Version 8.4-701|http://jdbc.postgresql.org/download/postgresql-8.4-701.jdbc3.jar].
{panel}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209584774</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">169345210</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">169377821</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[mette.larsen@morecom.no]]></property>
<property name="creationDate">2008-10-07 06:39:42.537</property>
<property name="lastModificationDate">2008-10-07 06:39:42.537</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649449</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks-v5.png|thumbnail!


Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# Click '*This comment does not mention dragons*' in the '*Latest Comment*' column on the review details screen.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616690</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649445</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye/Crucible Admin screen.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks-v5.png|thumbnail!


Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# Click '*This comment does not mention dragons*' in the '*Latest Comment*' column on the review details screen.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616686</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200677001</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* 
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Follow the steps below to hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

Now you can create some data in JIRA, including a project and an issue, for use in the subsequent stages of the Atlassian Dragon Quest. Then you will create your own JIRA dashboard with a couple of gadgets.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Create a project in JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Projects*' in the left-hand panel, then click '*Add Project*'.
#* Enter the following information:
#** Name: {color:blue}{*}{{Dragons}}{*}{color}
#** Key: {color:blue}{*}{{DRA}}{*}{color}
#** Project Lead: {color:blue}{*}{{charlie}}{*}{color}
#** Description: {{Atlassian Dragon Quest}}
#* Leave the rest of the fields with their default values. Click '*Add*'. 
# Add two versions (1.0 and 2.0):
#* Click '*Manage* versions'.
#* Enter the following information then click '*Add*':
#** Version Name: {{1.0}}
#** Description: {{Version 1.0}}
#* Follow the same steps to add {{Version 2.0}}.
# Add an issue to your project:
#* Click '*Create Issue*' at top right of the screen, select the following options then click '*Create*':
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#* Enter the following information about your new issue then click '*Create*':
#** Summary: {{Dragon slayer's  equipment is defective}}
#** Affects Version/s: {{1.0}}
#** Assignee: {{Charlie of Atlassian}} -- Click '*Assign to me*'.
#** Description: {{There's a hole in the dragon slayer's water bucket.}}
#** Original Estimate: {{1d}}
#* (/) You now have an issue with a key of '{color:blue}{*}DRA-1{*}{color}'.
{panel}


{color:red}*TBC{color}
# Create a dashboard: 
\- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.
Does the 'project' gadget exist? Is it the same as the 'projects' gadget?


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200710169</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649444</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *45 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Technical task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Leave unchanged.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks-v5.png|thumbnail!


Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye/Crucible Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review

In this step, you will create a Crucible review from the dashboard activity stream and create a comment in that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Dashboard*' tab in FishEye/Crucible.
# Click the '*Activity*' tab on the dashboard, if it is not already active, to display the activity stream.
# Find changeset '*153936*' committed by '*drosen*' in the activity stream. Click the cog icon next to the date for the commit and click '*Create Review*' in the menu that appears.
# The 'Edit Review Details' screen will appear. Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1' review screen will appear.
# Click '*ExampleMacro.java*' under '*trunk/src/main/java/com/atlassian/dragons*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment. The review comment will appear. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 4. Create a JIRA Issue from a Crucible Review

Next, you will reopen JIRA issue DRA-1 so that you can create subtasks for it, then create the JIRA subtask from the comment in your Crucible review, and resolve the issue via Crucible. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
# Go to your FishEye/Crucible URL in your web browser, e.g. {{http://localhost:8060/}}.
# The FishEye/Crucible dashboard will appear. Click '*Re: DRA-1*' in the '*Re: DRA-1 commented on review*' text in the activity stream.
# Click '*This comment does not mention dragons*' in the '*Latest Comment*' column on the review details screen.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'.
# Click '*Create*'. The page will refresh. The key of your new issue (DRA-4) will be displayed in the review comment with a status of 'Open'. 
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page.
# Click the back button of your browser to view your review again.
# Click the '*Resolve*' link next to the issue key in your review comment. The status of the issue in the review comment will change to 'Closed'.
# Click the issue key, '*DRA-4*'. The issue will be displayed in JIRA on your page with a status of 'Closed'.
{panel}

+_Screenshot 4 (click to enlarge): Closed JIRA issue displayed in a Review comment_+

!CrucibleReviewCommentJIRAIssue.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 5 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Out+of+the+Crucible.+Completed+stage+7+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616685</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">238649439</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2} 

h2. Step 1. Add a JIRA-FishEye Application Link 

In this step you will link your JIRA and FishEye servers by creating an application link.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the downward-pointing arrow next to your username (i.e. 'Charlie of Atlassian') then click '*Administration*' in the dropdown menu to go to the FishEye Admin screen.
# Click '*Application Links*' in the left-hand panel. 
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'. 
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your FishEye site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'. The application link will be created and displayed on the 'Configure Application Links' page.
# Click '*Configure*' next to the '*Your Company JIRA*' application link.
# Change the '*Application Name*' to {{Dragons JIRA}} and click '*Update*'.
# Click '*JIRA Settings*' next to the '*Dragons JIRA*' application link.
# The 'Update JIRA Server' screen will appear. Select the '*Include in Activity Streams*' checkbox.
# Click '*Save*'.
# Click the '*Server*' link in the left-hand menu under 'Global Settings'.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'. 
{panel}

_{+}Screenshot 1 (click to enlarge): Adding JIRA as a trusted application in FishEye{+}_ 

!FishEyeCrucibleAppLinks.png|thumbnail!

h2. Step 2. Link a FishEye Repository to a JIRA Project and Subscribe JIRA to FishEye Gadgets

In this step you link your FishEye repository to your JIRA project via an "entity link". This will enable the hyperlink on JIRA issue keys in FishEye and the summary popup window that appears when you move your cursor over a JIRA issue key. You will also make your FishEye gadgets available for use in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the '*Repositories*' link in the left-hand menu under 'Repository Settings'.
# The 'Repositories' screen will appear. Click the cog icon next to your '*Dragons*' repository and click '*Application Links*' from the menu that appears.
# Click '*Add Link*' then click '*Dragons JIRA (JIRA)*' from the dropdown menu.
# Click '*Create*'. The FishEye repository-JIRA project link will be created.
# Now you will make your FishEye gadgets available in JIRA, so that JIRA users will be able to add any FishEye gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your FishEye site (e.g. {{[http://coopers:8060]}} or {{[http://www.foobar.com:8060]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The FishEye gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step. 
{panel}


h2. Step 3. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Edit Primary Configuration*'.
# Enter the following information:
#* Enable Crucible Integration: {{Yes}}
#* Review Search Method: {{Both}}
# Leave all the other fields at their default values and click '*Update*'.
# Click '*Application Links Configuration*' at the bottom of the screen. 
# Click '*Trusted Applications*' in the '*Outgoing Authentication*' column for your FishEye/Crucible link.
# Click '*Modify*' and enter the following information: 
#* '*IP Patterns*': Enter the IP addresses for your FishEye/Crucible instance (separated by commas), e.g. 127.0.0.1, 172.20.5.95.
You can find the IP addresses for your FishEye/Crucible instance by viewing the 'Remote Addresses' tab for the application in Crowd.
# Click '*Apply*'.
# Click '*Incoming Authentication*' in the left menu.
# Click '*Modify*' and enter the following information:
#* '*IP Patterns*': Enter the IP addresses for your JIRA instance (one per line), e.g. 127.0.0.1, 172.20.5.95.
#* '*URL Patterns*': Enter the following paths (one per line): {{/plugins/servlet/streams}}, {{/sr/jira.issueviews:searchrequest}}, {{/secure/RunPortlet}}, {{/rest}}, {{/rpc/soap}}
# Click '*Apply*' and then '*Close*'.
{panel}

h4. Try It Out!

* There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA issue_+
\\
!JIRAIssueSourceTab.png|thumbnail!

* There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 3 (click to enlarge): Source tab on a JIRA project_+
\\
!JIRAProjectSourceTab.png|thumbnail!

* You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

* In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.


Full details are in the [JIRA documentation|JIRA:Integrating JIRA with FishEye].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 4. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6-v5.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Get JIRA and Crucible Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">238616680</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">167216175</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] lets you work with your [Crucible|http://www.atlassian.com/software/crucible] code reviews within your IDEA development environment. 
{excerpt}

+_Screenshot: Crucible Reviews in an IDEA Tool Window_+
\\
\\
!IDEPLUGIN:_Flagship Image for IDEA Crucible^crucible tab.jpg|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">167183601</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168069171</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover APIs|CLOVER:] --- please search for 'API' to find the relevant pages
* [Atlassian IDE Plugin for Eclipse|IDEPLUGIN:IDE Plugin for Eclipse] --- see links on home page
* [Atlassian IDE Plugin for IDEA|IDEPLUGIN:IDE Plugin for IDEA] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168003922</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520586</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Frequently Asked Questions (FAQ)

Below are some questions that dragon slayers have asked after completing their initial setup, and our answer to each question. If you have a question that is not answered here, please try the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126], refer to the in-depth [documentation|ALLDOC:] or consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

{children:excerpt=true}

{color:red}wait the cache refresh or create other users using the JIRA console.{color} {color:red}[http://forums.atlassian.com/thread.jspa?messageID=257322031]{color}

h2. Using JIRA, Bamboo and FishEye within Eclipse

Do you develop in [Eclipse|http://www.eclipse.org/]? Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within your IDE. The [Atlassian Connector for Eclipse|http://www.atlassian.com/software/ideconnector/eclipse.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h4. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector].

h4. More about the Atlassian Connector for Eclipse

|| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
\\
With [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye or send a FishEye link to your colleagues.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |

h2. Using JIRA, Bamboo and FishEye within IntelliJ IDEA

Do you develop in [IntelliJ IDEA|http://www.jetbrains.com/idea/]? Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within your IDE. The [Atlassian Connector for IntelliJ IDEA|http://www.atlassian.com/software/ideconnector/intellij.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h4. In a Hurry?

Follow our [connector installation guide for IntelliJ IDEA|IDEPLUGIN:Installing the IntelliJ Connector].

h4. More about the Atlassian Connector for IntelliJ IDEA

|| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation instructions|IDEPLUGIN:Installing the IntelliJ Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |


h2. Crucible for Code Reviews

Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA



h2. Clover for Code Coverage

Do you want to know how much of your code is covered... [Clover]

Overview plus links to WAC page.]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487891</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">169148578</id>
<property name="body"><![CDATA[{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level, rating the vulnerability as one of the following:
* Critical
* High
* Moderate
* Low

Below is a summary of the factors which we use to decide on the severity level, and the implications for your installation.

h6. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

h6. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

h6. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

h6. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

{info:title=Original ranking compiled by the SANS Institute}
Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/]. The relevant page is no longer available, but you can find an archived version on the [Wayback Machine|http://web.archive.org/web/20080105015855/http://www.sans.org/newsletters/cva/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">169115832</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">242286879</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge09.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Using the Free IDE Connectors

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for user guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding Another Atlassian Tool to your Suite

This section tells you about another Atlassian developer tool that you can add to your integrated suite, [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Clover for Code Coverage

[Clover|http://www.atlassian.com/software/clover/] is a code coverage tool for Java. 'Code coverage' means that Clover measures how much of your Java code is executed by your tests. Clover has several differentiating features, including the ability to [optimise|CLOVER:About Test Optimization] your test execution (make your builds faster), measure per-test coverage and produce interactive HTML reports. Clover provides plugins for [Eclipse|http://www.eclipse.org/] and [IntelliJ IDEA|http://www.jetbrains.com/idea/].

| Installation | Clover offers several different installation options, depending on your development and build tools. The details are in the [Clover documentation|CLOVER:]. Below are the instructions for using Clover within Bamboo. (This configuration will work only for Java projects using Maven 2 or Ant.) Since you have already installed Bamboo, it is very simple to enable the Clover plugin for Bamboo. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color}.
# Make sure you are on the '*All Plans*' tab of the '*Home*' screen. (Click '*Home*' in the top navigation bar, then click '*All Plans*'.)
# Click the name of the plan, '{color:blue}*Main*{color}', to open the plan summary.
# Click the '*Configuration*' tab.
# Click the '*Builder*' tab.
# Click the '*Edit Plan*' link.
# Select the checkbox labelled '*Use Clover to collect Code Coverage for this build*'.
# A new section of the screen will open. Select the radio button labelled '*Automatically integrate Clover into this build*'.
# More reporting options appear. At this stage it is fine to leave them unselected.
# _Optional_ -- Enter your '*Clover License*':
#* If you have a Clover license, enter the license key.
#* If you do not have a Clover license, leave the license field empty. You can use Clover in Bamboo for 30 days without obtaining a license.
# Click '*Save*'.
{panel}|
| Overview | Now that you have Clover in Bamboo, you can run a build and see the [code coverage|BAMBOO:Viewing the Clover Code-Coverage for a Build Result]. You can also use Bamboo's [report generator|BAMBOO:Generating Reports across Multiple Plans] to see the [Clover Lines of Code report|BAMBOO:'Clover Lines of Code' Report] and the [Clover Code Coverage report|BAMBOO:'Clover Code Coverage' Report].
\\
\\
If you would like to try it out with our sample repository, follow the instructions below. 
(i) Please note: Running the build of our sample project will take quite a long time: *approximately 20 minutes*. This is because the build procedure will download and start the Confluence web application so that it can run the integration tests.
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Build Actions*' near the top right of the Bamboo build plan screen, for your {color:blue}*Dragons Main*{color} plan.
# A dropdown menu will appear. Click '*Run Build*'.
# The build will start. If this is the second time you have run a build, it will be called {color:blue}*DRAG-MAIN-2*{color}. Have a cup of hot chocolate while the build runs. It will take some time -- approximately 20 minutes. Here is a summary of what it will do:
#* Download the Clover plugin for Bamboo.
#* Run the unit tests.
#* Download the Confluence web application. It does this because our sample project is a Confluence plugin.
#* Start a Confluence server in Tomcat on port 1990.
#* Run the integration tests.
#* Shut down Confluence.
#* Collect the Clover artifacts.
#* Finally, report that the build is successful. (Or that it has failed.)
#* When the build has finished, click the build name, e.g. {color:blue}*DRAG-MAIN-2*{color}, near the top right of the screen.
# The 'Build Result' screen will appear. Click the '*Clover*' tab.
# The 'Clover Code Coverage' screen will appear.
{panel}
_+Screenshot 2 (click to enlarge): Clover in Bamboo+_
\\
\\
!CloverInBamboo.png|thumbnail! |
| Classic Clover | More things you can do with Clover:
* From within [IntelliJ IDEA|CLOVER:Clover-for-IDEA User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, and optimise your test builds.
* From within [Eclipse|CLOVER:Clover-for-Eclipse User's Guide], view recently-run tests via the Test Run Explorer, see the Java code annotated with coverage information, view coverage cloud and treemap reports, see the unit tests and methods that generated coverage for the currently opensource file, and optimise your test builds.
* Use Clover [for Ant|CLOVER:Clover-for-Ant User's Guide], interactively or in automated builds, with a range of current and historical reports, clouds and charts.
* Use Clover [for Maven 1|CLOVER:Clover-for-Maven 2 User's Guide] or [for Maven 2|CLOVER:Clover-for-Maven 2 User's Guide], view a range of historical and custom reports, and optimise your test builds. |
| Videos and tours| See our [website|http://www.atlassian.com/software/clover/]. |

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup. Click the links to see the details of each hint.
{children:style=h4|excerpt=true}

h5. RELATED TOPICS

[Here Be Dragons]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">242254169</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427026</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and visible to *Atlassian staff only*.{color}

Below is a guide to installing and configuring and integrated suite of Atlassian applications. The guide consists of detailed step-by-step instructions for setting up a specific configuration. There are also links to the installation and configuration guides for each component, so that you can change the setup to suit your needs where necessary.

{info:title=JIRA Studio}Atlassian offers a fully hosted development platform called [JIRA Studio|http://www.atlassian.com/hosted/studio/]. Based on [JIRA|http://www.atlassian.com/software/jira], the popular issue tracker and workflow management tool, JIRA Studio adds version control, repository viewer, wiki and code review, all in one seamless hosted experience.{info}

h4. Installing an Integrated Suite of Atlassian Applications

{children}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394406</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">169148540</id>
<property name="body"><![CDATA[{color:red}This section is DRAFT visible to *Atlassian staff only*. It will be published after review.{color}

{hide}
NOTE: The entire content of this page is included into other pages and even other spaces, using the \{include} macro. Do not add anything to this page unless it can be included into the body of the other pages.
{hide}

Atlassian security advisories include a severity level, rating the vulnerability as one of the following:
* Critical
* High
* Moderate
* Low

Below is a summary of the factors which we use to decide on the severity level, and the implications for your installation.

h6. Severity Level: Critical

We classify a vulnerability as critical if most or all of the following are true: 
* Exploitation of the vulnerability results in root-level compromise of servers or infrastructure devices.
* The information required in order to exploit the vulnerability, such as example code, is widely available to attackers. 
* Exploitation is usually straightforward, in the sense that the attacker does not need any special authentication credentials or knowledge about individual victims, and does not need to persuade a target user, for example via social engineering, into performing any special functions.

h6. Severity Level: High

We give a high severity level to those vulnerabilities which have the potential to become critical, but have one or more mitigating factors that make exploitation less attractive to attackers. 

For example, given a vulnerability which has many characteristics of the critical severity level, we would give it a level of high if any of the following are true: 
* The vulnerability is difficult to exploit.
* Exploitation does not result in elevated privileges.
* The pool of potential victims is very small. 

Note: If the mitigating factor arises from a lack of technical details, the severity level would be elevated to critical if those details later became available. If your installation is mission-critical, you may want to treat this as a critical vulnerability.

h6. Severity Level: Moderate

We give a moderate severity level to those vulnerabilities where the scales are slightly tipped in favour of the potential victim. 

The following vulnerabilities are typically rated moderate:
* Denial of service vulnerabilities, since they do not result in compromise of a target. 
* Exploits that require an attacker to reside on the same local network as the victim.
* Vulnerabilities that affect only nonstandard configurations or obscure applications.
* Vulnerabilities that require the attacker to manipulate individual victims via social engineering tactics.
* Vulnerabilities where exploitation provides only very limited access.

h6. Severity Level: Low

We give a low severity level to those vulnerabilities which by themselves have typically very little impact on an organisation's infrastructure.

Exploitation of such vulnerabilities usually requires local or physical system access. Exploitation may result in client-side privacy or denial of service issues and leakage of information about organisational structure, system configuration and versions, or network topology.

{info:title=Original ranking compiled by the SANS Institute}
Our vulnerability ranking is based on a scale originally published by the [SANS Institute|https://www2.sans.org/]. The relevant page is no longer available, but you can find an archived version on the [Wayback Machine|http://web.archive.org/web/20080105015855/http://www.sans.org/newsletters/cva/].{info}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">169115791</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446806</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review and then create a JIRA issue from that review.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Create a Crucible Project


{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Tick this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
{panel}

h2. Step 2. Create a Review and an Issue Linked to the Review

In the previous step, [Dragons Stage 6 - Get JIRA and FishEye Talking], you configured FishEye to trust JIRA. Crucible will use the same trusted applications link. 

In this step, you will create a Crucible review and create a JIRA issue from that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the 'Reviews' tab in FishEye/Crucible.
# Click 'Create Review'.
# The Create Review screen will appear. Select 'DRA' as the project and click 'Create Review'.
# The Add Content screen will appear. Click 'Browse Changesets'.
# Tick the checkbox next to changeset '153936'. There will be 21 changed files in this changeset.
# Click 'Start Review'.
# Click 'Confirm' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click 'ExampleMacro.java' in the file tree on the left. The code for the file will appear in the right panel.
# Scroll down to line 21 in the code and click the '21'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment doesn't mention dragons. Please amend the text.}}
#* Defect -- Tick this checkbox
# Click 'Post' to post your review comment.
{panel}

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414262</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">165085387</id>
<property name="body"><![CDATA[{section}
{column:width=40%}
{panel:title=Watch this space|borderStyle=solid|borderColor=#ccc|titleBGColor=#D0D9BD|bgColor=#f5f7f1}
This documentation is under development. We will keep adding more information about how you can make your [Atlassian products|http://www.atlassian.com] work together.
{panel}
{panel:title=Support|borderStyle=solid|borderColor=#ccc|titleBGColor=#6699cc|bgColor=#cee7ff}
Do you have a question, a problem or a suggestion?
* If you have a problem and need help from our support team, please raise a ticket on our [Support System|http://support.atlassian.com].
* For suggestions, bugs or feature requests, please raise an issue [here|https://studio.atlassian.com/secure/BrowseProjects.jspa]. (If you do not already have a username, you can easily sign up for an account on the 'Login' screen.)
* Try our [forums|http://forums.atlassian.com/] for hints and tips from other Atlassian customers.
* Check out the [training|http://www.atlassian.com/support/training.jsp] we offer.
{panel}
{panel:title=Links|borderStyle=solid|borderColor=#ccc|titleBGColor=#A5D24C|bgColor=#DCEDB9}
Looking for more information? Try these links:
* [Overview of Atlassian Products|http://www.atlassian.com]

If you would rather not install everything yourself, try one of our hosted offerings:
* [JIRA Studio|JIRASTUDIO:]
* [Enterprise Hosting|EHOSTING:]
{panel}
{column}

{column:width=60%}
h2. About Atlassian Product Integration

Using our open API and scores of plugins, your Atlassian products will soon put the information you need at your fingertips when you need it.

This documentation is your first port of call for information on integrating your Atlassian products:
* The [integration points|Integration Points] show the many different ways the products work together and how you can make it happen.
* The [development hub|Integration Development Hub] is for developers who want to create plugins or extend the Atlassian products in other ways.

h2. Latest News
{blog-posts:5|content=titles}

Click a news item to read its content, or visit the [News page|http://confluence.atlassian.com/pages/viewrecentblogposts.action?key=ATLAS] to see more.

h2. Integration Points

Here are a few of the ways our products work together:
{children:page=Integration Points|depth=1|first=10}

Want to see more? Take a look at the [full list of integration points|Integration Points].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">165118181</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037638</id>
<property name="body"><![CDATA[This page summarises the [JIRA Portlet macro|DOC:JIRA Portlet Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Portlet macro|DOC:JIRA Portlet Macro] to display a portlet from your [JIRA|http://www.atlassian.com/software/jira/] site on a [Confluence|http://www.atlassian.com/software/confluence/] page. The information is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

+_Screenshot: JIRA Portlet displayed on a Confluence page_+
\\
\\
!JIRAPortletMacro.png|border=1,bordercolor=gray!

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Portlet macro|DOC:JIRA Portlet Macro] allows you to display a [JIRA dashboard portlet|http://www.atlassian.com/software/jira/docs/latest/dashboard.html] on a [Confluence|http://www.atlassian.com/software/confluence/] page.

h2. Components

h6. Type of Integration

The JIRA Portlet macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Portlet macro|DOC:JIRA Portlet Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005066</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446922</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review, add comment to the review and then create a JIRA issue from that review comment. You'll also add a Crucible gadget to your JIRA dashboard.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Reopen JIRA Issue DRA-1

Before we can create subtasks for JIRA issue DRA-1 from Crucible, we need to reopen it.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
{panel}

h2. Step 2. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Sub-task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Select '*Fixed*'.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 4. Create a Review 

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414392</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037637</id>
<property name="body"><![CDATA[This page summarises the [JIRA Issues macro|DOC:JIRA Issues Macro] and provides links to more information. Unless otherwise stated, the information here refers to the latest version of Confluence and the macro. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Use the [JIRA Issues macro|DOC:JIRA Issues Macro] to display a list of [JIRA|http://www.atlassian.com/software/jira/] issues on a [Confluence|http://www.atlassian.com/software/confluence/] page. The list is shown in tabular format, and is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
{excerpt}

+_Screenshot: JIRA issues displayed on a Confluence page_+
\\
\\
!JIRAIssuesMacro.png|border=1,bordercolor=gray!

h2. Full Description

[JIRA|http://www.atlassian.com/software/jira/] is the issue tracking and project management system supplied by Atlassian. The [JIRA Issues macro|DOC:JIRA Issues Macro] allows you to display a list of issues from a JIRA site within a page in [Confluence|http://www.atlassian.com/software/confluence/].

In other words, if you have your own JIRA site, your Confluence page can show a dynamically-updated list of issues from your JIRA project. You can also show a list of issues from any JIRA site to which you and your readers have access.

h2. Components

h6. Type of Integration

The JIRA Issues macro is provided by a plugin, which is shipped as part of the Confluence installation. Provided that the Confluence administrator has not disabled the macro, you will be able to use it without any additional installation.

h2. Documentation

{section}
{column:width=40%}
h6. Latest Version
Please refer to the [Confluence JIRA Issues macro|DOC:JIRA Issues Macro].
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Confluence Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005065</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446921</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review and then create a JIRA issue from that review.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Reopen JIRA Issue DRA-1

Before we can create subtasks for JIRA issue DRA-1 from Crucible, we need to reopen it.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
{panel}

h2. Step 2. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Sub-task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Select '*Fixed*'.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 4. Create a Review 

In the previous step, [Dragons Stage 6 - Get JIRA and FishEye Talking], you configured FishEye to trust JIRA. Crucible will use the same trusted applications link. 

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414391</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037636</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for Eclipse and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [Eclipse|http://www.eclipse.org/] displays Bamboo build information in your Eclipse development environment. 
{excerpt}

+_Screenshot: Bamboo Watched Plans and Build Log in Eclipse_+
\\
\\
!EclipseBuildLog.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for Eclipse|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [Eclipse|http://www.eclipse.org/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for Eclipse Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for Eclipse|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005064</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446918</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review and then create a JIRA issue from that review.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Reopen JIRA Issue DRA-1

Before we can create subtasks for JIRA issue DRA-1 from Crucible, we need to reopen it.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click the arrow next to '*Issues*' in the top navigation bar. Click the 'DRA-1' issue under the 'Recent Issues' in the dropdown that appears.
# Click '*Reopen issue*'
# The 'Reopen issue' screen will appear. Click '*Reopen issue*'.
{panel}

h2. Step 2. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Sub-task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Select '*Fixed*'.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 4. Create a Review 

In the previous step, [Dragons Stage 6 - Get JIRA and FishEye Talking], you configured FishEye to trust JIRA. Crucible will use the same trusted applications link. 

In this step, you will create a Crucible review, create a comment in that review and create a JIRA issue from that comment.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'. 
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment does not mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
# The review comment will appear. Click the '*Create Issue*' link in the comment panel.
# The '*Create Issue*' panel will appear. Leave the '*Summary*' and click the '*Assign to Me*'
# Click '*Create*'.
# You can view the subtask you have just created in JIRA. Open your 'DRA-1' issue in JIRA. 
{panel}

(/) You can now view your review in the 'Reviews' tab on your 'DRA-1' JIRA issue. Open your 'DRA-1' issue and click the 'Reviews' tab. The tab shows the reviews related to the issue, i.e. the reviews involving changesets related to the issue.


+_Screenshot 3 (click to enlarge): Reviews tab on a JIRA issue_+

!JIRAIssueReviewsTab.png|thumbnail!


h2. Step 5. Add a Crucible Gadget to JIRA 

Now you will add the 'Crucible Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your web browser, e.g. {{http://localhost:8080/}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Crucible' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Crucible Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Crucible Charts*' gadget:
#* Enter '*DRA*' in the '*Crucible Project Key*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Crucible Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:#003366}*dark blue*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 6 gadgets:
* The 'Crucible Charts' gadget
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 4 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboardStage7.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 8 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414388</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446917</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review and then create a JIRA issue from that review.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Enable Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Sub-task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Select '*Fixed*'.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

_+Screenshot 2 (click to enlarge): Crucible Dragons Project linked to JIRA Dragons Project+_ 

!CrucibleJIRAProjectEntityLink.png|thumbnail!

Full details are in the [Crucible documentation|CRUCIBLE:JIRA Integration in Crucible].

{include:_Dragons Problem or Victory|nopanel=true} 


h2. Step 3. Create a Review 

In the previous step, [Dragons Stage 6 - Get JIRA and FishEye Talking], you configured FishEye to trust JIRA. Crucible will use the same trusted applications link. 

In this step, you will create a Crucible review and create a JIRA issue from that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'.
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment doesn't mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
{panel}

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+

----


\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414387</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037644</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] displays and lets you work with [JIRA|http://www.atlassian.com/software/bamboo] issues in your IDEA development environment. 
{excerpt}

+_Screenshot: JIRA Issues in an IDEA Tool Window_+
\\
\\
!JIRAWithContextMenu.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">166005072</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446912</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review and then create a JIRA issue from that review.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 2. Configure Sub-Tasks for Crucible 

In this step, you will configure your FishEye/Crucible-JIRA application link to enable sub-tasks for Crucible.  This is required for creating JIRA issues from Crucible reviews.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Application Links*' in the left-hand panel.
# Click '*JIRA Settings*' next to your 'Dragons JIRA' application link.
# The 'Update JIRA settings' screen will appear. Select the  '*Use Basic Authentication*' checkbox and enter the login details for {color:blue}*{{charlie}}*{color}.
# Click the '*Test*' button in the 'Subtask Settings'. The page will refresh, however the 'Subtask Settings' section will display different controls. Enter the following information:
#* Subtask Type -- Select '*Sub-task*'.
#* Subtask Resolution Action ID: {{2}} 
#* Subtask Resolution -- Select '*Fixed*'.
#* Allow Unassigned -- Select '*Yes*'.
# Click '*Save*'.
{panel}

_+Screenshot 1 (click to enlarge): Crucible-JIRA application link with sub-tasks configured+_ 

!CrucibleJIRASettingsSubtasks.png|thumbnail!


h2. Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project

Next, you will create a Crucible project and link it to your JIRA project.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Select this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
# Click '*Application Links*' in the '*Operations*' column next to your 'Dragons' project.
# The 'Dragons Application Links' screen will appear. Click '*Add Link*' and click '*Dragons JIRA (JIRA)*' in the dropdown menu that appears.
# The 'Enter link details' screen will appear. Enter the following information:
#* Key: {{DRA}}
#* Alias: {{Dragons}}
# Click '*Create*'.
{panel}

h2. Step 4. Create a Review and an Issue Linked to the Review

In the previous step, [Dragons Stage 6 - Get JIRA and FishEye Talking], you configured FishEye to trust JIRA. Crucible will use the same trusted applications link. 

In this step, you will create a Crucible review and create a JIRA issue from that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Select the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'.
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment doesn't mention dragons. Please amend the text.}}
#* Defect -- Select this checkbox
# Click '*Post*' to post your review comment.
{panel}

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414380</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">227446910</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Remember, the most important piece of equipment is your shield. If you must make a choice between a sword and a shield, take the shield!_

In this stage you will configure JIRA and Crucible, so that you will be able to create a review and then create a JIRA issue from that review.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Create a Crucible Project

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click the username (i.e. 'Charlie of Atlassian') then '*Administration*' from the dropdown menu, to go to the FishEye Admin screens.
# Click '*Projects*' in the left-hand panel. 
# The 'Projects' screen will appear. Click '*Create a New Project*'. 
# The '*Edit Project*' screen will appear. Enter the following information:
#* Name: {{Dragons}}
#* Key: {{DRA}}
#* By default, allow anyone to join reviews after creation -- Tick this checkbox.
# Leave all other fields at their default values and click '*Save*'.
# The 'Projects' screen will appear again, displaying your 'Dragons' project. 
{panel}

h2. Step 2. Create a Review and an Issue Linked to the Review

In the previous step, [Dragons Stage 6 - Get JIRA and FishEye Talking], you configured FishEye to trust JIRA. Crucible will use the same trusted applications link. 

In this step, you will create a Crucible review and create a JIRA issue from that review.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*Reviews*' tab in FishEye/Crucible.
# Click '*Create Review*'.
# The 'Create Review' screen will appear. Select 'DRA' as the project and click '*Create Review*'.
# The Add Content screen will appear. Click '*Browse Changesets*'.
# Tick the checkbox next to changeset '*153936*'. There will be 21 changed files in this changeset.
# Click '*Start Review*'.
# Click '*Confirm*' at the warning screen. The 'DRA-1: initial commit of sample Confluence plugin' review screen will appear.
# Click '*ExampleMacro.java*' in the file tree on the left. The code for this file will appear in the right panel.
# Scroll down to line 21 in the code and click the '*21*'. 
# A text area will open for you to enter a comment. Add the comment as follows:
#* Enter the following text in the text area: {{This comment doesn't mention dragons. Please amend the text.}}
#* Defect -- Tick this checkbox
# Click '*Post*' to post your review comment.
{panel}

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project, provided the changes were committed in the last 30 days.
(i) We committed our changes to the 'Dragons' repository more than 30 days ago, so you will not see any commits on the JIRA project tab. The screenshot below shows you what they would look like.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. To try it, go to the 'Source' tab on your '{color:blue}*DRA-1*{color}' issue and click the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}').

(/) In FishEye, you can see a popup summary of issue information for an issue key. Try it by moving your cursor over '{color:blue}*DRA-1*{color}' in your FishEye view. You can also click through from FishEye to JIRA by clicking the issue key.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*FishEye Charts*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 5 gadgets:
* The 'FishEye Charts' gadget
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 5 gadgets_+
\\
\\
!JIRADashboardStage6.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+Completed+stage+6+of+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">227414378</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676782</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install Confluence

# Install Confluence 3.0.1.
# Admin setup:
## Configure the base URL.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Configure Confluence and Crowd

# *Configure Confluence to use Crowd*


{include:_Dragons Problem or Victory|nopanel=true}



h2. Try it Out

# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)
# configure Confluence to have a base URL

*Victory*...




{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 5 - Install AppLinks]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709918</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676789</id>
<property name="body"><![CDATA[There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your JIRA Database in PostgreSQL

xxxxxxxxxxxx

h2. Step 2. Install Confluence

# Install Confluence 3.0.1.

Link to docs....

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 3. Set Up Confluence

# Configure the base URL.



{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 4. Hook Confluence up to Crowd

xxxxxxxxxxxxxxx


Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}



h2. Step 5. Create a Wiki space


# create a space {color:blue}{*}DRA{*}{color} (Dragon Space\!)


h2. Victory

(/) You can now xxxxxxxx

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 4 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 5 - Install AppLinks]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709925</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676786</id>
<property name="body"><![CDATA[Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install GreenHopper Plugin into JIRA

# *Download GreenHopper*
# *Install plugin into JIRA*
# *Setup GreenHopper* \- install the license key.
# (/) *Victory* \- see the {color:blue}{*}DRA{*}{color} planning board inside GreenHopper and create {color:blue}{*}DRA-2{*}{color} using 'Create Card' from within the Planning Board.
# *Create a sprint* \- and drag {color:#0000ff}{*}DRA-1{*}{color}&nbsp; and {color:#0000ff}{*}DRA-2{*}{color} into it.
# (/) *Victory* \- see the burndown chart
# *GreenHopper gadget* \- add the GreenHopper gadget to the {color:blue}{*}Dragon Development Dashboard{*}{color}
# (/) *Victory* \- see the GreenHopper gadget on the dashboard - now has 3 gadgets\!

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 3 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 4 - Install Confluence]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709922</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">223379463</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">223543300</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[samyuchao@163.com]]></property>
<property name="creationDate">2010-08-16 10:21:52.989</property>
<property name="lastModificationDate">2010-08-16 10:21:52.989</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676797</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons. Take heart, be strong and you will prevail. 

In this stage, you will install [FishEye|] xxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Install FishEye

# Configure FishEye to use Crowd
# Set up FishEye's JIRA integration -- set up your JIRA servers.
# FishEye Admin Setup:
## Configure FishEye to have a base URL
## Enable the public API


(/) *Victory*
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)
* 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}

h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 7 - Get JIRA and FishEye Talking]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709935</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676798</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons. Take heart, be strong and you will prevail. 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

xxxxxxxxx

h2. Step 2. Install FishEye

xxxxxxxxx

(Where's their repository?)

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709936</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676813</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons. Take heart, be strong and you will prevail. 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

xxxxxxxxx

h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.4*. 

xxxxxxxxx

(Where's their repository?)

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709951</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676810</id>
<property name="body"><![CDATA[You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons. Take heart, be strong and you will prevail. 

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA and Crowd.

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL 

xxxxxxxxx

h2. Step 2. Install FishEye

xxxxxxxxx

(Where's their repository?)

Full details are in the xxxxxxxxxxx documentaton.

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye

# Configure FishEye to have a base URL......
# Enable the public API..........
# Set up FishEye's JIRA integration -- set up your JIRA servers..

{anchor:crowd}
h2. Step 4. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO and centralised user management. 

xxxxxxxx

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 



h2. Victory!

(/) You can now xxxxxxxxxxxxxxx
* You can see your source in FishEye. Features include:
** FishEye quicknav.
** RSS feed from FishEye e.g. commits.
* The links on {color:blue}{*}DRA-1{*}{color} from within the commit link correctly to JIRA.
* FishEye activity stream shows JIRA issue updates and comments. (Note that this may take some time if you have just set up FishEye, because it needs to do its slurp.)
* Hover over JIRA issue keys in FishEye to see ........ (Note that you need to commit with a JIRA issue key in the comments.)

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 6 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 7 - Get JIRA and FishEye Talking].
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709948</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676809</id>
<property name="body"><![CDATA[You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go. 

In this stage, you will xxxxxxxxxxxxxx

*Time estimate:* This stage will take approximately *30 minutes* {color:red}*(TBC)*{color}

h2. Configure FishEye Plugin into JIRA

# *FishEye plugin* \- configure the FishEye plugin in JIRA (it's bundled, just needs configuration)


(/) *Victory:*
* You can see source commits against {color:blue}{*}DRA-1{*}{color} in the Source tab in JIRA

{include:_Dragons Problem or Victory|nopanel=true}

h2. Add a FishEye Gadget to JIRA

# *FishEye Gadget* \- add a FishEye gadget to your dashboard: {color:red}(Choose one of the following to show them){color}
## 'Recent Commits' gadget
## 'Charts' gadget


(/) *Victory* \- in JIRA your dashboard now has 4 gadgets (2 JIRA, 1 GreenHopper, 1 Fisheye)

{include:_Dragons Problem or Victory|nopanel=true}

h2. Slay the Dragon

{color:red}*Game here*{color}
h2. Take a Bow and Move to the Next Stage

{tip:title=Tweet?}[Tweet|http://twitter.com/home?status=I've completed stage 7 of the Atlassian Dragon Quest @AtlassianDragons].{tip} 

[Dragons Stage 8 - Configure Crucible]
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709947</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427154</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and visible to *Atlassian staff only*.{color}

We have put together a guide (see below) to integrating a suite of Atlassian applications. The guide consists of detailed step-by-step instructions for setting up a specific configuration. There are also links to the installation and configuration guides for each component.

Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult. So we invite you to join the *Atlassian Dragon Quest*.

* *Starting from scratch?* If you do not have any Atlassian applications installed, please start at [Here be Dragons].
* *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed]. ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394539</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">218103941</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">218071057</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[work@pollackworld.us]]></property>
<property name="creationDate">2010-05-13 14:57:47.007</property>
<property name="lastModificationDate">2010-05-13 14:57:47.007</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520625</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse, you can:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |
| Videos and more | See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and more | See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

{color:red}
Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA
{color}


h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487930</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520653</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears, as shown below.
# Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse, you can:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |
| Videos and more | See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and more | See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

{color:red}
Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA
{color}


h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487960</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520654</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints after Initial Setup

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Full instructions are in our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. Here are the instructions for Eclipse 3.5 using the Mylyn Connector Discovery wizard:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Ensure that you have already installed Mylyn 3.2.x. (If you are using an Eclipse package from the [Eclipse download site|http://eclipse.org/downloads/], Mylyn 3.2 is already included in any package except the Classic download.)
# In Eclipse Mylyn, open the '*Task Repositories*' view. (In Eclipse, click '*Windows*', '*Show View*', '*Other*' and select the '*Task Repositories*' view from the '*Tasks*' category.)
# Click the '*Add Task Repository*' icon.
# The '*Add Task Repository*' screen appears. Click the '*Install More Connectors*' button.
# The '*Mylyn Connector Discovery*' screen appears. Select the Atlassian Connector and click '*Finish*' to install it. 
{panel}|
| Overview | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse, you can:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp]. |

h4. Atlassian Connector for IntelliJ IDEA

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA, as described in our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. Here are the instructions in brief:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Open the IDEA plugin manager. (Go to IDEA's 'File' menu and select 'Settings', 'IDE Settings', 'Plugins'.)
# Right-click '*Atlassian Connector for IntelliJ IDEA*' in the 'Available' plugins tab.
# Select '*Download and Install*'.
{panel}
 |
| Overview | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector], you can:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |
| Videos and tours| See our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp]. |

h2. Adding More Atlassian Tools to your Suite

This section tells you about more Atlassian developer tools that you can add to your integrated suite:
* [Crucible|http://www.atlassian.com/software/crucible/] for code review.
* [Clover|http://www.atlassian.com/software/clover/] for code coverage.

h4. Crucible for Code Review

| Installation | {color:red}Must check this -- I got an NPE when trying it, due to a bug in FE 2.0.4.{color}
Crucible is part of the FishEye installation. Since you have already installed FishEye, it is very simple to enable Crucible. All you need is a license key:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Obtain a [Crucible license|http://www.atlassian.com/software/crucible/pricing.jsp].
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*Sys Info/Support*' in the left-hand panel.
# Scroll down to the bottom and click '*Edit License*'.
# Enter your Crucible license key into the '*Crucible License Key*' field. 
# Click '*Save*'.
{panel}|
| Overview | [Crucible|http://www.atlassian.com/software/crucible/] is a web application that integrates with your source repository, providing workflow and database storage for your code reviews. With Crucible, you can collaborate on code reviews across time zones and geographical locations:
* [Perform a review|CRUCIBLE:Performing the Review] that has been assigned to you.
* [Create|CRUCIBLE:Creating a Review] a review.
* [Assign reviewers|CRUCIBLE:Adding Reviewers].
* [Add files and changesets|CRUCIBLE:Selecting the Files for the Review] to the review.
* Manage the [review workflow|CRUCIBLE:P\Summarising and Closing the Review].
* Integrate your reviews [with JIRA|http://www.atlassian.com/software/crucible/tour/jira-integration.jsp]. |
| Screenshots and tours| See our [website|http://www.atlassian.com/software/crucible/]. |
| In your IDE | Try the awesome [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/] to conduct Crucible code reviews directly within [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. The Atlassian IDE Connectors are *free*. |

h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487962</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427188</id>
<property name="body"><![CDATA[{section}
{column:width=125px}
!_Dragons Images^dragon_badge00.png!
{column}
{column} 
_Beware, all ye who enter, for here be dragons! This is the starting point for the Atlassian Dragon Quest._

By the time you reach the end of this set of instructions, you will have an awesome Atlassian integrated development suite (details [below|#goals]). There's a good chance that the Atlassian Integration Dragon will scorch the clothes off your back somewhere along the way, so we'll also send you a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] when you have completed all the steps.
{column}
{section}

(i) *Got JIRA?* If you are already using JIRA, please start at [Dragon Slayers with JIRA Already Installed].

{note:title=Getting help}If you run into problems at any stage of the integration procedure, please go immediately to the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126]. Please don't try to battle on alone. Instead, ask for help immediately. We'll be monitoring the forum 24 hours a day, and you're sure to meet other battle-weary dragon slayers there too.{note} 

{anchor:go}
h2. Rushing into the Dragon's Lair
{section}
{column:width=50%}
{tip:title=Don your armour and alert your serfs}If you like, you can [tweet your status|http://twitter.com/home?status=Fare+ye+well%2C+all+brave+souls+and+true.+I'm+starting+the+Atlassian+Dragon+Quest!+%23AtlassianDragons].{tip}

* Please [read the introduction below|#introduction].

Now you're ready to start stage 1. Meet the dragon if you dare!
{children}

{column}
{column:width=50%}

{tip:title=Follow yon Brave Dragon Slayers}On the [Atlassian Dragons Twitter stream|http://twitter.com/#search?q=%23AtlassianDragons].{tip}
{column}
{section}

{anchor:introduction}
h2. What's This All About?

We have put together these instructions for integrating a suite of Atlassian applications. Setting up the integrated suite will give you awesome results, but we know that the setup procedure can be long and difficult.

Why would we ask you to undertake this exercise?
* We're issuing a *challenge* to our boldest and most skilled customers and evaluators.
* We'd like to *learn* from your experiences, so that we can improve the setup and integration procedures.
* It's another excuse to give away some *T-shirts*.

{anchor:goals}
h6. The Wins

When you have completed the final stage, you will have set up these Atlassian applications and features to work with each other:
* [JIRA|http://www.atlassian.com/software/jira/] for bug tracking.
* [GreenHopper|http://www.atlassian.com/greenhopper/] for agile project management.
* [Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki.
* [FishEye|http://www.atlassian.com/software/fisheye/] to open up your source repository.
* [Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration.
* [Crowd|http://www.atlassian.com/software/crowd/] for user management and single sign-on.
* [Atlassian Gadgets|GADGETS:].


If you slay the dragon, you win a free, limited-edition [Atlassian DragonSlayer T-shirt|http://www.atlassian.com/starter/youslayedthedragon.jsp] too.

h6. How Long Will It Take to Slay the Dragon?

We estimate that it will take *5 hours* to complete all the stages.

h2. Getting Kitted Out

Before you start, please note the points below.

h4. Assumptions
* This guide is written for a technical audience. You will need to install a database, install the Atlassian applications and adjust the configuration files.
* This guide assumes that you are starting from scratch, with no Atlassian applications installed or with only JIRA installed.
** If you can start with a clean slate, with no Atlassian applications at all, please do continue with the integration procedure described on this page and its child pages.
** If you have JIRA but nothing else, please start at [Dragon Slayers with JIRA Already Installed]. 
** If you already have Confluence, Crowd, FishEye or Bamboo, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].
* This guide assumes that you will be using a specific database and specific versions of the applications and plugins, as described in each stage of this guide. If you need to use other drivers or application versions, please consult our [Support team|https://support.atlassian.com/secure/Dashboard.jspa].

h4. Hardware Requirements

We recommend the following:
* 2GB RAM
* No other applications running --- just the operating system, JAVA, PostgreSQL and the Atlassian applications.
* 500MB disk space for application files.

h4. Software Requirements
* *Program for extracting our downloaded archive files:* Please check your unzip/unpack program before extracting any of the Atlassian downloaded zip or archive files. Some unzip/unpack programs cause errors.
** *Linux* or *Unix* users can use any unpack program.
** *Solaris* users must use [GNU Tar|http://www.gnu.org/software/tar/#downloading] instead of Solaris Tar.
** *Windows* users should use a third-party unzip program like 7Zip or Winzip. If you do not have one, please download and install one before continuing:
*** [7Zip|http://www.7-zip.org/] --- Recommended. If in doubt, download the '32-bit .exe' version
*** [Winzip|http://www.winzip.com/]
* *Operating System:* The instructions are for Windows, UNIX and Linux. We do not offer instructions for Mac OS X as it is not a platform [preferred by our customers|http://blogs.atlassian.com/developer/2009/03/system_environments_in_support.html]. If you have specific questions please seek assistance on the [Dragon Slayers' Forum|http://forums.atlassian.com/forum.jspa?forumID=126].
* *Application server:* By following our instructions, you will set up a standalone version of each Atlassian product, using the default Tomcat or Jetty server provided with each application.
* *Database:* By following our instructions, you will set up a PostgreSQL database server in [stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] and use the database server in all subsequent stages.
* *Source repository:* For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye and Bamboo installations. We recommend this repository because:
** We have committed a code change with a JIRA issue key in the commit message. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
** The sample repository is small, so that FishEye's initial repository indexing process will be fast.
* *Build tool:* For the [Bamboo integration stages|Dragons Stage 7 - Install Bamboo] you will need a build tool, also called a builder. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder].
* *Java Development Kit:* You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process.

h4. Other Notes
* *Virus checkers:* If you have a virus checker running, there may be a delay in the availability of JAR files after you have placed a required JAR into a directory, while the virus checker scans the file. This may happen with the PostgreSQL database driver files, for example. If you receive an error saying that a driver or other such file is not available, wait a few minutes and try again.
* *Passwords:* At several points in this integration procedure you will need to enter a password. The password will be used to secure your data. The password you choose is up to you, but it is important you pick something that is hard to guess. Take a moment now to think of a password. Here are some guidelines from AusCERT on [choosing a good password|http://www.auscert.org.au/render.html?it=2260]. This will save you time later.

[Rush into the dragon's lair|#go].]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394575</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520599</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints and Tips

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.{color} {color:red}[http://forums.atlassian.com/thread.jspa?messageID=257322031]{color}

h2. Working in your IDE

This information will be useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment).

h4. Using JIRA, Bamboo and FishEye within Eclipse

Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within [Eclipse|http://www.eclipse.org/]. The [Atlassian Connector for Eclipse|http://www.atlassian.com/software/ideconnector/eclipse.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h5. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector].

h5. More about the Atlassian Connector for Eclipse

|| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
\\
With [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye or send a FishEye link to your colleagues.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |

h4. Using JIRA, Bamboo and FishEye within IntelliJ IDEA

Now that you have JIRA, FishEye and Bamboo installed, you may like to use them all together within [IntelliJ IDEA|http://www.jetbrains.com/idea/]. The [Atlassian Connector for IntelliJ IDEA|http://www.atlassian.com/software/ideconnector/intellij.jsp] is *free*.

Now you don't have to switch between websites, email messages and news feeds to see what's happening to your project and your code. Instead, you can manage your JIRA issues and Bamboo builds right there in your development environment. You can also move quickly between your IDE and FishEye's view of your source repository.

h5. In a Hurry?

Follow our [connector installation guide for IntelliJ IDEA|IDEPLUGIN:Installing the IntelliJ Connector].

h5. More about the Atlassian Connector for IntelliJ IDEA

|| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation instructions|IDEPLUGIN:Installing the IntelliJ Connector]. |
|| Overview | Our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |

h2. Adding More Atlassian Tools



h2. Crucible for Code Reviews

{color:red}
Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA
{color}


h2. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487904</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427193</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394579</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427195</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_03.png! 
_Beware of low-flying worms. You are embarking on stage 3 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [GreenHopper|http://www.atlassian.com/greenhopper/] into JIRA, for agile project management.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Install GreenHopper Plugin into JIRA

Requirements: *GreenHopper 4.0 for JIRA 4.0.x*.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/greenhopper/GreenHopperDownloadCenter.jspa].
# Download *GreenHopper 4.0 for JIRA 4.0.x*.
# Shut down your JIRA server. (Press Ctrl+C in your JIRA server command window or run {{\{JIRA_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{JIRA_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Copy the downloaded Greenhopper JAR file into your {{\{JIRA_HOME\}/plugins/installed-plugins}} directory, where {{\{JIRA_HOME\}}} is the JIRA Home directory that you specified when installing JIRA in [Dragons Stage 2|Dragons Stage 2 - Install JIRA#install]. For example:
#* On Windows: {{C:\data\jira-home\plugins\installed-plugins}}
#* On UNIX: {{/var/jira-home/plugins/installed-plugins}}
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Set up your GreenHopper license key:
#* Click '*Administration*' in the top navigation bar.
#* Click '*GreenHopper Licence*' in the left-hand panel (in the 'System' section).
#* The 'GreenHopper License Information' screen will appear. Paste your Greenhopper license key into the '*GreenHopper Licence*' textbox. If you do not already have a GreenHopper license, follow the prompts on the 'GreenHopper License' screen to get an evaluation license key.
(!) Make sure you have a *GreenHopper 4* license. Existing 3.x licenses will not work.
#* Click '*Add*'.
# Click '*Agile*' in the top navigation bar.
(/) You will see the {color:blue}{*}DRAGONS{*}{color} planning board, supplied by GreenHopper in JIRA.
(If you do not see the planning board, click the down arrow next to 'Agile' and select '*Planning Board*'.)
{panel}

+_Screenshot 1 (click to enlarge): The GreenHopper planning board in JIRA_+
\\
\\
!GreenHopperPlanningBoardDefault.png|thumbnail!
\\
\\
There's more about getting started with GreenHopper in the [GreenHopper documentation|GH:GreenHopper Quick Start Guide].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add Another JIRA Issue and a Sprint

Now that you have GreenHopper, you can choose to add JIRA issue and do other updates via GreenHopper or via the standard JIRA interface. Now that you have GreenHopper you can choose to add, edit and move JIRA issues through the workflow stages via the Planning and Task Boards under the Agile tab or via the standard JIRA interface. For this exercise, you will do your updates via GreenHopper. First you will create a couple of 'sprints', also known as 'milestones'. A sprint is a short period of time, e.g. two weeks, in which your developers focus on a particular set of tasks. Then you will create a new issue and include it in one of the sprints, and add your existing issue to the same sprint.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Manage*' on the planning board.
# The 'Manage Versions' screen will appear. Add a sprint with the following information:
#* Version Name: {{2.0.S1}}
#* Description: {{Version 2.0 Sprint 1}}
# Add another sprint with the following information:
#* Version Name: {{2.0.S2}}
#* Description: {{Version 2.0 Sprint 2}}
# Click '*Agile*' in the top navigation bar to go back to your planning board.
# Your two new sprints will appear as boxes on the right of the planning board, underneath the '*2.0*' box. Now you need to include the two sprints into the existing version 2.0. Click the '*Edit Master*' icon next to '*Master*' in the box for sprint '*2.0.S1*'.
# A dropdown list will appear. Select '*2.0*'.
# The '*2.0.S1*' sprint will become part of version 2.0 -- the gap between the boxes will disappear and a small downward and rightward-pointing arrow will appear next to the heading '2.0.S1'.
# Edit the '*Master*' for sprint '*2.0.S1*' in the same way.
# You now have two sprints within version 2.0. Next, you need to add a new issue (card). Click '*New Card*' on the planning board. Enter the following values:
#* Card type: {{Bug}}
#* Priority: {{Blocker}}
#* Summary: {{Exploding flame extinguishers}}
#* Version: {{Unscheduled}}
#* Component: {{Unknown}}
#* Original estimate: {{2d}}
#* Assignee: {{Charlie of Atlassian}} -- Click the '*Assign to me*' icon.
# Click '*Create and Close*', to create the issue. You will see your planning board again.
# Click the card for your existing issue {color:blue}*DRA-1*{color}, drag the card to the right and drop it onto the box for sprint '*2.0.S1*'.
# Drag {color:blue}*DRA-2*{color} to sprint '*2.0.S1*' as well.
# Your planning board will now be empty. Select version '*2.0.S1*' in the version dropdown list at the top of your planning board. You should now see your two cards, i.e. issues '{color:blue}*DRA-1*{color}' and '{color:blue}*DRA-2*{color}'.
# Click the version number '*2.0*' at the top of the version 2.0 box on the right. Notice the following points:
#* The number in the version dropdown box at the top of the planning board also changes to '2.0'.
#* Your two issue cards are included in version 2.0 as well as in sprint 2.0.S1.
#* You can click the down arrows at top right of each version box, to minimise the box.
# Now you can mark one of your issues as complete:
#* Click the down arrow next to 'Agile' and select '*Task Board*'.
#* Your task board will appear, with your two issue cards in the 'TO DO' column on the left. Click the card for '*DRA-1*', drag it to the right and drop it in the '*DONE*' column.
#* The '*Transitioning Issue*' screen will appear. Click '*Close Issue*' and leave all other values at their defaults.
# Go back to your planning board to see the changes reflected there too.
{panel}

+_Screenshot 2 (click to enlarge): The GreenHopper planning board for version 2.0_+
\\
\\
!GreenHopperPlanningBoardv20.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Step 3. Add the GreenHopper Gadget to your JIRA Dashboard

Now you will add the GreenHopper 'Agile' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen. 
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'agile' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Agile*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard. 
# Click '*Finished*' to go back to your dashboard. 
# Configure the '*Agile*' gadget:
#* Select '*Dragons*' in the '*Projects*' dropdown list.
#* Leave the default value for '*Display chart values*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'. 
#* Click '*Save*'.
#* Click the version dropdown arrow and select '*2.0*'.
#* The gadget will display the '*Hours*' burndown chart. Click the '*Issues*' tab to see the issues burndown chart.
(The burndown charts will become more interesting when you have more issues in your project.)
# Choose a different colour for your '*Agile*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:green}*green*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 3 gadgets:
* The GreenHopper 'Agile' gadget
* the 'Assigned to Me' gadget
* The 'Projects' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 3 gadgets_+
\\
\\
!JIRADashboard3Gadgets.png|thumbnail!
\\
\\

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge03.png!
{column}
{column}
h5. Grab your Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=GreenHopper+for+agile+dragon+slayers.+I've+completed+stage+3+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 4 - Install Confluence].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394581</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427197</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will create a wiki space and add a dynamic list of JIRA issues to a wiki page. You will also hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management. 

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database} 
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.3/bin/createdb -O confuser confluence
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL_+
\\
\\
!PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence 3.0.1*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *Confluence 3.0.1*.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}. 
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence 3.0.1*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}} directory.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}
h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
# Connect Confluence to your PostgreSQL database:
#* Click the '*Custom Installation*' button.
#* The 'Choose a Database Configuration' screen will appear. In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* In the 'Setup Standard Database' section, enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql//localhost:5432/confluence}}
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- This is the password you chose in step 1 ([above|#database]).
#* Click the '*Next*' button.
# # On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
(i) You might need to wait a few minutes while Confluence sets up its database and the demonstration space content.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}*{{charlie}}*{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}*{{Charlie of Atlassian}}*{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The 'Confluence Demonstration Space' home page will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' buttons.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running, as it should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}http://coopers:8090{nolink}}}. Alternatively, specify a website address such as {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
# Log out of Confluence, but leave the Confluence server running.  (Move your cursor over the name '*Charlie of Atlassian*' and click '*Log Out*'.)
{panel}

+_Screenshot 2 (click to enlarge): Home page of the Confluence demo space_+
\\
\\
!ConfluenceDemoSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}
h2. Step 4. Hook Confluence up to Crowd

Follow the steps below to hook Confluence up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).) 
# Copy the Crowd client libraries and configuration files to your Confluence installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{confluence}}
#* application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code} 
# Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'authenticator' element:
{{<authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/>}}
and replace it with:
{{<authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>}}
Your modifications should look similar to this:
{code:xml}
<security-config>
  ...
  <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
  <authenticator class="com.atlassian.crowd.integration.seraph.ConfluenceAuthenticator"/>
  ...
</security-config>
{code}
# Start your Confluence server again, and go to your Confluence URL in your browser, e.g. {{{nolink}http://www.foobar.com:8090{nolink}}}.
# Log in to Confluence with username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}
h2. Step 5. Configure JIRA to Trust Confluence

In this step you will set up a trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on a Confluence wiki page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your Confluence site (e.g. {{http://coopers:8090}} or {{http://www.foobar.com:8090}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{Confluence}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'.
{panel}

Full details are in the [JIRA documentation|JIRA:Configuring Trusted Applications]. 

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence for use in the subsequent stages of the Atlassian Dragon Quest. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within a wiki site. It's almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Create a space*' on the left side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{*}{{Dragons}}{*}{color}
#* Enter a space key: {color:blue}{*}{{DRA}}{*}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Default Theme*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, add a {color:blue}*Charlie badge*{color}:
#* Right-click on the image of the {color:blue}*Charlie badge*{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. Select and delete the following text in the editor pane:
{quote}This is the home of the Dragons space.
To help you on your way, we've inserted some of our favourite macros on this home page. As you start creating pages, adding news items and commenting you'll see the macros below fill up with all the activity in your space. 
{quote}
#* Press the 'Enter' key twice to make some space.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and select the {color:blue}*Charlie badge*{color} image that you saved earlier. Click '*Attach*' to upload the image.
#* The image file name will appear in the 'Filename' textbox. Click '*OK*'.
#* The image will appear in the editor pane of your home page. Click '*Save*' to save your updated wiki page.
# Now you will add a JIRA Issues macro to your page, to display a dynamic list of issues drawn from your '{color:blue}*Dragons*{color}' project on your JIRA site. The first step is to define a filter in JIRA:
#* Keep Confluence open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
#* Click the down arrow next to '*Issues*' in the top navigation bar, then select '*Search for Issues*'.
#* The 'Issue Navigator' will appear. Select '*Dragons*' in the '*Project*' list on the left.
#* Click '*View*'.
#* A list of issues will appear in the 'Issue Navigator'. You should see your two issues, {color:blue}*{{DRA-1}}*{color} and {color:blue}*{{DRA-2}}*{color}. Click '*Save it as a filter*' in the left-hand panel.
#* The 'Save Current Filter*' screen will appear. Enter the following information:
#** Name: {{Dragons}}
#** Description: {{Dragons}}
#* Click the '*Save*' button at the bottom of the screen (_not_ the one next to 'Add Shares').
#* The saved filter will appear, showing the same two issues. Click '*Views*' at top right of the screen, right-click '*XML*' and copy the link location for the '*XML' view into your clipboard.
# Add the JIRA Issues macro to your Confluence page:
#* Go back to your Confluence browser window/tab.
#* Edit your 'Dragons' home page again.
#* Place your cursor immediately after your {color:blue}*Charlie badge*{color} image and press '*Enter*' a few times to make some blank lines.
#* Paste the content of your clipboard into a blank line, for safe keeping. You will delete it again soon. It should be a JIRA filter URL that looks something like this:
{code:html}http://coopers:8080/sr/jira.issueviews:searchrequest-xml/10000/SearchRequest-10000.xml?tempMax=1000{code}
#* Copy the following text into the next line on the Confluence page:
{code}
{jiraissues:url=CONTENT}
{code}
# Replace '{{CONTENT}}' with the JIRA filter URL from the line above, then delete the line containing the filter URL. 
#* Save the page. 
{panel}

h2. Victory!

(/) You now have a 'Dragons' space in your Confluence wiki. Your space home page has a Charlie badge and a dynamically-updated list of JIRA issues.

+_Screenshot 3 (click to enlarge): Home page of the Dragons space_+
\\
\\
!ConfluenceDragonSpace.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}
h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 5 - Install FishEye].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394583</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427202</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.5*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory. 
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
#* Wait a few minutes for the server to launch. This message will appear on the command line once ready: \\'*INFO  - Server started on :8060 (http) (control port on _your-server-IP-address_:8059)*'. 
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394588</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520622</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints and Tips

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

h5. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector].

h5. In More Detail

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
| Functional Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. |
| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |

h4. Atlassian Connector for IntelliJ IDEA

h5. In a Hurry?

Follow our [connector installation guide for IntelliJ IDEA|IDEPLUGIN:Installing the IntelliJ Connector].

h5. In More Detail

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. |
| Functional Overview | Our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp] has an overview and some videos. |
| User Guide | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector], you can open a file from Eclipse in FishEye and send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |

h2. Adding More Atlassian Tools to your Suite

This section contains information on additional Atlassian developer tools that you can add to your integrated suite:
* [Crucible] for code reviews.
* [Clover] for code coverage.



h4. Crucible for Code Reviews

{color:red}
Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA
{color}


h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487927</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427204</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_06.png!
_You are embarking on stage 6 of the [Atlassian Dragon Quest|Here Be Dragons]. Be prepared to ride on the dragon's back, for he is swift and strong and will take you where you need to go._

In this stage you will configure JIRA and FishEye, so that you will be able to see code commits in JIRA and see JIRA issues in FishEye.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4} 

h2. Step 1. Add a JIRA Server to FishEye and Enable Remote API

In this step you will define a JIRA server in the FishEye administration interface, configure FishEye to trust JIRA and enable FishEye's remote API.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your FishEye URL in your web browser, e.g. {{http://localhost:8060/}}.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Enter your FishEye administration password. This is the password you chose when setting up FishEye in [Dragons stage 5|Dragons Stage 5 - Install FishEye#setup].
# Click '*JIRA Servers*' in the left-hand panel. 
# The 'View JIRA Servers' screen will appear. Click '*Add a JIRA Server*'. 
# The '*Add JIRA Server*' screen will appear. Enter the following information:
#* Name: {color:blue}*{{Dragons JIRA}}*{color}.
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter Charlie's password in Crowd.
#* Include in Activity Streams -- Select this checkbox.
#* Authenticate as Trusted Application -- Select this checkbox.
# Click '*Test*' to ensure that your details are correct. 
# Click '*Save*'.
# Click '*Trusted Applications*' in the left-hand panel.
# The 'Trusted Applications List' will appear. Click '*Add a Trusted Application*'.
# The 'Trusted Application' screen will appear. Enter the following information:
#* URL -- Enter the base URL of your JIRA server, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}. 
# Leave the other fields at their default values and click '*Get Id*'.
# FishEye will add the trusted application ID into the '*Id*' field. Click '*Save*'.
# Click '*Server Settings*' in the left-hand panel.
# The 'Server Settings' screen will appear. Click '*Edit Settings*'.
# The 'Edit Web Settings' screen will appear. Select the '{{*On*}}' radio button next to '*Allow remote API calls*'.
# Click '*Update*'.
{panel}

h2. Step 2. Configure the FishEye Plugin in JIRA

The FishEye plugin for JIRA is bundled as part of the JIRA package, so there is no need to install it. Now you will configure the plugin for your installation and configure JIRA to trust FishEye.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{http://www.foobar.com:8080}}.
# Click '*Administration*' in the top navigation bar.
# The JIRA Administration console will open. Click '*FishEye Configuration*' in the left-hand panel (in the 'Global Settings' section). 
# The 'JIRA FishEye Plugin' screen will appear. Click '*Setup FishEye*'.
# The 'FishEye' screen will appear. Enter the following information:
#* FishEye URL -- Enter the URL of your FishEye server, e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}.
#* Wiki Rendering: {{ON}}
# Leave all the other fields at their default values and click '*Update*'.
# The '*Associate FishEye Repositories with JIRA Projects*' screen will appear. Enter project key '{color:blue}*DRA*{color}' next to the 'Dragons' repository under '*Mapped Project Keys*'.
# Click '*Update*'.
# Click '*Trusted Applications*' in the left-hand panel (in the 'System' section).
# The 'View Trusted Applications' screen will appear, with a section called '*Request New Trusted Application Details*'. Copy the base URL for your FishEye site (e.g. {{http://coopers:8060}} or {{http://fisheye.foobar.com:8060}}) and paste it into the '*Base URL*' field.
# Click '*Send Request*'.
# The 'Add New Trusted Application' screen will appear. Enter the following information:
#* Application Name: {{FishEye}} -- The default will be the URL you entered on the previous screen. You can safely change it to a more meaningful name.
#* IP Address Matches: {{127.0.0.1}} -- Add this address to a new line in the box.
# Leave the other fields at their default values.
# Click '*Add*'. 
{panel}

(/) There is now a 'Source' tab on your JIRA issues. Open your '{color:blue}*DRA-1*{color}' issue and click the new '*Source*' tab. The tab shows the changesets related to the issue, i.e. changesets where the JIRA issue key was included in the commit message.

+_Screenshot 1 (click to enlarge): Source tab on a JIRA issue_+
\\
\\
!JIRAIssueSourceTab.png|thumbnail!
\\
\\
(/) There is now also a 'Source' tab on your JIRA project. Open your '{color:blue}*Dragons*{color}' project to see the new tab. (Click the dropdown arrow next to '*Projects*' in the top navigation bar, then click the '{color:blue}*Dragons (DRA)*{color}' project.) The 'Source' tab shows the most recent changesets related to any issue in the project.
\\
\\
+_Screenshot 2 (click to enlarge): Source tab on a JIRA project_+
\\
\\
!JIRAProjectSourceTab.png|thumbnail!
\\
\\
(/) You can click through from JIRA to view a changeset or other repository views in FishEye. Try clicking the changeset number ('*1*') or the repository name ({color:blue}'*Dragons*{color}') on the 'Source' tab in JIRA.

(/) You can also click through from FishEye to JIRA, by clicking the issue key. Try it by clicking '{color:blue}*DRA-1*{color}' in your FishEye view.

Full details are in the [FishEye plugin documentation|JIRAEXT:FishEye for JIRA].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 3. Add a FishEye Gadget to JIRA

Now you will add the 'FishEye Charts' gadget to your {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'FishEye' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*FishEye Charts*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*FishEye Charts*' gadget:
#* Enter '*Dragons*' in the '*Repository*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Re-arrange your dashboard by dragging the '*Projects*' gadget to the right and dropping it under the '*Assigned to Me*' gadget. Drag the '*Agile*' gadget to the bottom right too.
# Choose a different colour for your '*FishEye Recent Changesets*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:orange}*orange*{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

Your JIRA dashboard now has 4 gadgets:
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile' gadget

+_Screenshot 3 (click to enlarge): JIRA dashboard with 4 gadgets_+
\\
\\
!JIRADashboard4Gadgets.png|thumbnail!
\\
\\
{include:_Dragons Problem or Victory|nopanel=true} 

{section}
{column:width=125px}
!_Dragons Images^dragon_badge06.png!
{column}
{column}
h5. Grab a Bigger Sword and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=The+dragon+is+swift+and+strong+but+so+am+I.+I've+completed+stage+6+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 7 - Install Bamboo].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394590</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168069228</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Confluence Development Hub|DOC:Confluence Development Hub]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWD:Crowd Development Hub]
* [FishEye Development Hub|FISHEYE:FishEye Development Hub]
* [Crucible Development Hub|CRUCIBLE:Crucible Development Hub]
* [Clover APIs|CLOVER:] --- please search for 'API' to find the relevant pages
* [Atlassian IDE Plugin for Eclipse|IDEPLUGIN:Atlassian Eclipse Connector] --- see links on home page
* [Atlassian IDE Plugin for IDEA|IDEPLUGIN:IDE Plugin for IDEA] --- see links on home page
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168003980</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427206</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_07.png!
_You are embarking on stage 7 of the [Atlassian Dragon Quest|Here Be Dragons]. The dragon may be growing in strength and power, but so are you._

In this stage, you will install [Atlassian Bamboo|http://www.atlassian.com/software/bamboo/] for continuous integration. Then you will get Bamboo talking to JIRA and Crowd, and run your first Bamboo build.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your Bamboo Database in PostgreSQL 

Now you will create a database where Bamboo will store its data, and the user that Bamboo will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'bamuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{bamuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'bamboo':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{bamboo}}.
#* Select the '*Owner*': {{bamuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Bamboo user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E bamuser
# Create the Bamboo database:
/opt/PostgreSQL/8.3/bin/createdb -O bamuser bamboo
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): Bamboo database and user in PostgreSQL_+
\\
\\
!PGAdminBambooDB.png|thumbnail!

{anchor:install}
h2. Step 2. Install Bamboo

Requirements: *Bamboo 2.4.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Download the '*Standalone (Windows Installer)*' file for *Bamboo 2.4.0*.
# Launch the Bamboo Windows installer ({{atlassian-bamboo-2.4-standalone.exe}}).
#* When prompted, enter the '*folder where you would like Bamboo to be installed*'. For example: {{C:\Program Files\Bamboo}} or {{C:\atlassian\bamboo}}. 
From this point onwards, we will refer to this installation directory as {{\{BAMBOO_INSTALL\}.
#* When prompted, tell Bamboo where to put its '*Bamboo home*' directory. For example: {{C:\data\bamboo-home}}.
# Click '*Finish*' to close the setup window when the installer has finished.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp\WEB-INF\lib}} directory.
# Install Bamboo as a Windows Service, so that it starts each time you start Windows: Click '*Start*', '*Programs*', '*Bamboo*, '*Install Service*'.
# Start Bamboo from your Windows '*Start*' menu: Click '*Start*', '*Programs*', '*Bamboo*, '*Start Service*'.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/bamboo/BambooDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Bamboo 2.4.0*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Bamboo where to put its Bamboo Home directory:
#* Edit the properties file at {{\{BAMBOO_INSTALL\}/bamboo/webapp/WEB-INF/classes/bamboo-init.properties}}.
#* Insert the property '{{bamboo.home}}' with an absolute path to your Bamboo Home directory. For example:
{{bamboo.home=/var/bamboo-home}}
#* Save the file.
# Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to your {{\{BAMBOO_INSTALL\}webapp/WEB-INF/lib}} directory.
# Start your Bamboo server by running {{\{BAMBOO_INSTALL\}/bamboo.sh start}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup} 
h2. Step 3. Set Up Bamboo

Now you can run Bamboo's Setup Wizard and then check your default Bamboo capabilities.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Bamboo, go to your web browser and type this address: [http://localhost:8085/|http://localhost:8085/].
# The Bamboo Setup Wizard will start up, to guide you through the process of setting up your Bamboo server and creating an administration user. Detailed instructions are in the [Bamboo documentation|BAMBOO:Running the Setup Wizard]. Below are the things you need to know for our Dragon Quest. Enter the '*Standard Installation Settings*' as follows:
#* License Key -- If you do not already have a Bamboo license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Configuration Directory -- Leave this at the default value.
#* Build Data Directory -- Leave this at the default value.
#* Build Working Directory -- Leave this at the default value. 
#* Broker URL -- Check that the URL contains a full URL and not '{{localhost}}'. If necessary, replace {{localhost}} with the real host name or IP address of your Bamboo server. For example, if your computer name is 'coopers' then the broker URL should look like this: {{tcp://coopers.sydney.atlassian.com:54663?wireFormat.maxInactivityDuration=300000}}.
# Enter the following information to connect to your Bamboo database created in step 1 [above|#database]:
#* Database configuration: {{External Database}}.
#* Database: {{PostgreSQL}}.
#* Database Connection: {{Direct JDBC connection}}.
#* Driver Class Name: {{org.postgresql.Driver}}.
#* Database URL: {{jdbc:postgresql://localhost:5432/bamboo}}.
#* User Name: {{bamuser}}.
#* Password -- Enter the password you specified in step 1 [above|#database].
#* Overwrite existing data -- Leave this checkbox unselected.
# For your '*Starting Data*', select '*Create new Bamboo home*'.
# Set up your '*Administrator User Details*':
#* Username: {color:blue}*{{charlie}}*{color}.
#* Password -- Enter a password for the administrator account and enter it again to confirm it.
#* Full Name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#* Email -- Enter the address of your administrator email account. We recommend that you give your own email address here.
# Enter the following '*Bamboo Configuration*' information:
#* Name of Bamboo instance: {{Atlassian Bamboo}}.
#* Base URL -- Enter the full website address at which your Bamboo server is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8085}}. Or specify a website address, such as {{http://www.foobar.com:8085}}.
#* Apply gzip compression -- Select this checkbox.
#* Accept remote API calls -- Select this checkbox, so that Bamboo's remote API is enabled.
# Click '*Complete Installation*'.
# Log in to Bamboo with username {color:blue}*{{charlie}}*{color} and the password you specified when creating the administrator user in the steps immediately above.
(/) You can now see the Bamboo home page.
# Now you will check that your Bamboo configuration includes your default builder and JDK. Click '*Administration*' in the top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*Builders*' in the left-hand menu.
# The 'Builders' screen will appear. Look through the list, to see if your build tool is included for '*All local agents*'. You can use any of the build tools supported by Bamboo, such as Maven 1, Maven 2, Ant, PHPUnit and others. See the [Bamboo documentation|BAMBOO:Configuring a new Builder]. For this integration exercise, we assume that you are using [Maven 2|http://maven.apache.org/download.html]. In that case, you should see a row in the table for '*Maven 2*', where the '*Agent*' column includes '*All local agents*'.
# If your builder is not included, click '*Add builder to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{Builder}}.
#* Type: {{Maven 2.0}}.
#* Label: {{Maven 2}}.
#* Path -- Enter the path to your Maven installation. This should be the same as the value that you have specified in your {{M2_HOME}} environment variable. For example: {{C:\maven2.2\apache-maven-2.2.0}} (Windows) or {{/usr/local/apache-maven/apache-maven-2.2.1}} (UNIX).
# Check that your Bamboo configuration includes your JDK. Click '*JDKs*' in the left-hand menu.
# The 'JDKs' screen will appear. Look through the list, to check that your JDK is included for '*All local agents*'. You will need Sun JDK 1.5 or higher. Note that the JRE alone is not enough. [Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd] of these instructions will guide you through the installation process. For this integration exercise, we assume that you are using JDK 1.6. In that case, you should see a row in the table for '*JDK 1.6.x_xx*', where the '*Agent*' column includes '*All local agents*'.
# If your JDK is not included, click '*Add JDK to server capabilities*'. The 'Add Capability' panel will appear. Enter the following information then click '*Add*':
#* Capability Type: {{JDK}}.
#* Label: {{JDK 1.6}}.
#* Java Home -- Enter the path to your JDK installation. This should be the same as the value that you have specified in your {{JAVA_HOME}} environment variable. For example: {{C:\Sun\SDK\jdk}} (Windows) or {{/opt/java/java_sdk1.6}} (UNIX).
{panel}

+_Screenshot 2 (click to enlarge): Bamboo home page_+
\\
\\
!BambooHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook Bamboo up to Crowd 

Follow the steps below to hook Bamboo up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Bamboo}}.
#* Name: {{bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Password -- Enter a password that Bamboo will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Bamboo site, as configured in step 3 [above|#setup], e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Bamboo application:
#* Click the '*Remote Addresses*' tab.
#* Add your Bamboo host name, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down Bamboo. (On Windows, open your '*Start*' menu and select '*Programs*', '*Bamboo*', '*Stop Service*'. On UNIX, run {{\{BAMBOO_INSTALL\}/bamboo.sh stop}}.)
# Remove the following file from your Bamboo installation folder: {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib/crowd-integration-client-1.6.1.jar}}
# Copy the Crowd client libraries and configuration files to your Bamboo installation folder:
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/lib}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes}}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{bamboo}}
#* application.password -- Enter the password that Bamboo will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard [above|#crowd].
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/atlassian-user.xml}} file. Uncomment the Crowd provider and comment the default repository so that the contents of the file is:
{code:xml}
<atlassian-user>
  <repositories>
    <crowd key="crowd" name="Crowd Repository"/>
  </repositories>
</atlassian-user>
{code}
# Edit the {{\{BAMBOO_INSTALL\}/webapp/WEB-INF/classes/seraph-config.xml}} file. Comment out the {{authenticator}} node :
{code:xml}
<!--<authenticator class="com.atlassian.bamboo.user.authentication.BambooAuthenticator"/>-->
{code}
and add a new one:
{code:xml}
<authenticator class="com.atlassian.crowd.integration.seraph.BambooAuthenticator"/>
{code}
# Start your Bamboo server again, and go to your Bamboo URL in your browser, e.g. {{{nolink}http://www.foobar.com:8085{nolink}}}.
# If you are still logged in to Crowd, you will be automatically logged in to Bamboo with username {color:blue}*{{charlie}}*{color}. If not, log in using Charlie's password in Crowd.
(/) You are now authenticating and using single sign-on via Crowd!
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 5. Get Bamboo and JIRA Talking

In this step you will set up the integration between Bamboo and JIRA, so that you can see your build information in JIRA and your issues in Bamboo.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# First you will tell your JIRA server about your Bamboo server. Keep Bamboo open in your browser, and open another browser window/tab. Go to your JIRA site in the second window/tab.
(/) Because you are using Crowd for single sign-on, you should be automatically logged in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Click '*Administration*' in JIRA's top navigation bar.
# The 'Projects' administration screen will appear. Click '*Bamboo Servers*' (in the 'Global Settings' section).
# The 'Bamboo Servers' screen will appear. Click '*Add Bamboo server*'.
# The 'Add Bamboo server' screen will appear. Enter the following information:
#* Server name: {{Atlassian Bamboo}}.
#* Description: {{Atlassian Bamboo}}.
#* Host URL -- Enter the base URL for your Bamboo site, e.g. {{http://coopers:8085}} or {{http://www.foobar.com:8085}}.
#* User name: {color:blue}*{{charlie}}*{color} -- This is the user name that Bamboo will use to log in to JIRA.
#* Password -- Enter Charlie's password as specified in Crowd.
#* Associated JIRA projects -- Leave this field empty.
# Click '*Add*'.
# Now you will tell your Bamboo server about your JIRA server. Go back to your Bamboo window/tab in your browser.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*JIRA Server*' in the left-hand menu (in the 'Communication' section).
# The 'Add a JIRA Server' screen will appear. Enter the following information:
#* Host URL -- Enter the base URL for your JIRA site, e.g. {{http://coopers:8080}} or {{http://www.foobar.com:8080}}.
#* Username: {color:blue}*{{charlie}}*{color} -- This is the user name that JIRA will use to log in to Bamboo.
# Password -- Enter Charlie's password, as specified in Crowd.
# Issue Key: {color:blue}*{{DRA-1}}*{color} -- This is the JIRA issue key for the issue that you created in [Dragons stage 2|Dragons Stage 2 - Install JIRA].
# Click '*Test*'. 
#* You should see the following message: '*Successfully retrieved JIRA issue from remote server*'. You should also see your issue key and summary under the heading '*Server Response*'.
#* If you do not see a successful response, check that you can log in to your JIRA server using the JIRA account and password you have specified on this screen.
# Click '*Save*'.
{panel}

Full details are in the [Bamboo documentation|BAMBOO:Integrating Bamboo with JIRA].

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 6. Set up a Project and Run a Build

In this step you will create a Bamboo project and run a sample build. For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your Bamboo 'Dragons' plan. We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA, FishEye and Bamboo integration immediately, without having to do your own commit.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Create Plan*' in Bamboo's top navigation bar.
# The 'Create a new plan' screen will appear. Enter the following information:
#* Project Name: {{Dragons}}.
#* Project Key: {{DRAG}}.
#* Build Plan Name: {{Main}}
#* Build Plan Key: {{MAIN}}
# Click '*Next*' and enter the following information.
#* Repository: {{Subversion}}.
#* Repository URL: {{[http://dragons.atlassian.com/dragons]}}.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
#* Authentication Type -- Leave this at the default value of '{{Password}}'.
#* Web Repository URL -- Enter the URL of your 'Dragons' source project in FishEye, e.g. {{[http://fisheye.foobar.com:8060/browse/Dragons]}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Enter the following information:
#* Builder -- Select your build tool, e.g. {{Maven 2}}.
#* JDK -- Select your JDK version, e.g. {{JDK 1.6}}.
# Leave the rest of the fields at their default values and click '*Next*'.
# Leave all the fields at their default values and simply click '*Next*' on each of the following screens: 'Requirements', 'Artifacts', 'Notifications' and 'Post Actions'.
# Leave all the fields at their default values on the 'Permissions' screen and click '*Save*'.
# Bamboo will immediately start a build, based on the plan that you have just created.
# When the build has finished, you will see a build result for build '{color:blue}*{{DRAG-MAIN-1}}*{color}'. This is the build '{color:blue}*{{1}}*{color}' based on your new plan '{color:blue}*{{MAIN}}*{color}' in your project '{color:blue}*{{DRAG}}*{color}'. With any luck, the build should be successful. :)
{panel}

+_Screenshot 3 (click to enlarge): Bamboo build in progress_+
\\
\\
!BambooBuildInProgress.png|thumbnail!
\\
\\
+_Screenshot 4 (click to enlarge): Bamboo build completed_+
\\
\\
!BambooBuildComplete.png|thumbnail!
\\
\\
(/) Click the '*Summary*' tab to see the plan summary.
\\
\\
+_Screenshot 5 (click to enlarge): Bamboo plan summary_+
\\
\\
!BambooPlanSummary.png|thumbnail!
\\
\\
Full details on creating a plan are in the [Bamboo documentation|BAMBOO:Creating a Plan].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory!

Your Bamboo, FishEye and JIRA servers are fully integrated. Here are some of the highlights for you to try.

(/) You can link your builds to JIRA issues in various ways. For example, you can include a JIRA issue key in a commit comment. Details are in the [Bamboo documentation|BAMBOO:Linking JIRA Issues to a Build]. To see the integration happening right now, add a comment to your build:
* In Bamboo, click '*DRAG-MAIN-1*' to open the build result summary.
* Click '*Actions*' then '*Add comment*'.
* Add the following comment: {{This build is related to DRA-1}}.
* Click '*Save*'.
* Click the '*Summary*' tab to go back to the build result summary. 

(/) Notice the panel showing the JIRA issue details on the Bamboo build result screen. The issue key is hyperlinked so that you can open the issue in JIRA.

+_Screenshot 6 (click to enlarge): Bamboo build result with links to JIRA issue_+
\\
\\
!BambooBuildSuccessful.png|thumbnail!
\\
\\
(/) Click the '*Issues*' tab to see the JIRA issues for a build result.
\\
\\
+_Screenshot 7 (click to enlarge): Bamboo build result showing a JIRA issues tab_+
\\
\\
!BambooJIRAIssues.png|thumbnail!
\\
\\
(/) Go to *JIRA* to see the Bamboo builds that relate to a particular JIRA issue, project or version. Details are in the JIRA documentation about viewing the Bamboo builds relating to a [JIRA issue|JIRA:Viewing the Bamboo Builds related to an Issue], [project|JIRA:Browsing a Project's Bamboo Builds] or [version|JIRA:Browsing a Version's Bamboo Builds]. The screenshot below shows the build for a particular issue.
\\
\\
+_Screenshot 8 (click to enlarge): JIRA issue showing a Bamboo build tab_+
\\
\\
!JIRAIssueBuild.png|thumbnail!
\\
\\
(/) When you link your FishEye and Bamboo projects to your own source repository and then commit changes, a source link will appear on your Bamboo build result. You will be able to click the source link to view the changed code in FishEye. 
(!) Unfortunately, you cannot reproduce this now because our sample repository is read-only. The screenshot below is for information only.
\\
\\
+_Screenshot 9 (click to enlarge): Bamboo build result showing link to FishEye source view_+
\\
\\
!BambooBuildSuccessful-annotated.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


{section}
{column:width=125px}
!_Dragons Images^dragon_badge07.png!
{column}
{column}
{anchor:dragons7}
h5. Grab a Bigger Shield and Go Conquer that Dragon

* *Tweet?* [Tweet|http://twitter.com/home?status=This+dragon+is+a+big+teddy+bear.+I've+completed+stage+7+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons]. 
* Go to [Dragons Stage 8 - Bamboo Gadgets and JIRA Victory].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394592</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520611</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints and Tips

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

h5. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector].

h5. In More Detail

| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
| Functional Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. |
| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
* Open a file from Eclipse in FishEye.
* Send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |

h4. Atlassian Connector for IntelliJ IDEA

h5. In a Hurry?

Follow our [connector installation guide for IntelliJ IDEA|IDEPLUGIN:Installing the IntelliJ Connector].

h5. In More Detail

| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. |
| Functional Overview | Our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp] has an overview and some videos. |
| User Guide | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
* Open a file from Eclipse in FishEye.
* Send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |

h2. Adding More Atlassian Tools to your Suite

This section contains information on additional Atlassian developer tools that you can add to your integrated suite:
* [Crucible] for code reviews.
* [Clover] for code coverage.



h4. Crucible for Code Reviews

{color:red}
Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA
{color}


h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487916</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203427209</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_08.png!
_You're nearly there. Stage 8 is the final step in the [Atlassian Dragon Quest|Here Be Dragons]. The dragon is a softy!_

In this stage, you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA dashboard.

*Time estimate:* This stage will take approximately *15 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Step 1. Add JIRA as an OAuth Consumer in Bamboo

Some gadgets require you to set up an OAuth communication channel between the site where the information is coming from (e.g. Bamboo) and the site where the information will be displayed (e.g. your JIRA dashboard). The 'Bamboo Plans' and 'Plan Summary' gadgets do require this setup. You will need to configure Bamboo to allow your JIRA site as an OAuth consumer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your Bamboo URL in your browser, e.g. {{[http://www.foobar.com:8085]}}.
# Click '*Administration*' in Bamboo's top navigation bar.
# The 'Bamboo Administration' screen will appear. Click '*OAuth Consumers*' in the left-hand panel.
# The 'OAuth Administration' screen will appear. Click '*Add OAuth Consumer*'.
# Enter the base URL of your JIRA site into the field labelled '*Consumer Base URL*', e.g.{{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}.
# Click '*Add*'.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 2. Add 2 Bamboo Gadgets to JIRA

Now you will add the 'Bamboo Plans' and 'Plan Summary' gadgets to your JIRA {color:blue}*Dragon Development Dashboard*{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to your JIRA URL in your browser, e.g. {{[http://www.foobar.com:8080]}}.
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'Bamboo' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. Find the '*Bamboo Plan Summary Chart*' gadget and click '*Add it Now*'. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Find the '*Bamboo Plans*' gadget and add it too.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Bamboo Plans*' gadget:
#* Click '*Login & approve*'.
#* If prompted, log in to Bamboo as '*{color:blue}{{charlie}}{color}*'. You will probably not be prompted, because you are currently logged in.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'. This is how you, as the Bamboo user, allow your JIRA site to access your Bamboo data.
#* The 'Bamboo Plans' gadget on your JIRA dashboard will now display some configuration fields. Select '*Dragons*' in the '*Select Plans*' section.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Configure the '*Bamboo Plan Summary Chart*' gadget:
#* Click '*Login & approve*'.
#* The 'Request for Access' screen will appear. Click '*Approve Access*'.
#* The 'Bamboo Plan Summary Chart' gadget on your JIRA dashboard will now display some configuration fields. Click the dropdown arrow next to '*Chart Type*' and select '*Duration & Failed Tests (group by Build Number)*'.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Click '*Save*'.
# Choose a different colour for your '*Bamboo Plans*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:purple}*purple*{color} square in the row of colours.
# Colour your '*Bamboo Plan Summary Chart*' gadget purple too.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. The Battle is Won, the Dragon is Slain

Your JIRA dashboard now has 6 gadgets:
* The 'Bamboo Plans' gadget
* The Bamboo 'Plan Summary' gadget
* The 'FishEye Charts' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

+_Screenshot 1 (click to enlarge): JIRA dashboard with 6 gadgets_+
\\
\\
!JIRADashboard6Gadgets.png|thumbnail!
\\
\\ 

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
h5. Don a T-Shirt. You Rock :)

* *Tweet?* [Tweet|http://twitter.com/home?status=Victory!+Dragons+hold+no+fear+for+me.+%40atlassian+where's+my+T-shirt%3F+%23AtlassianDragons]. 
* Order your *_Atlassian DragonSlayer T-shirt_* and send us a screenshot of your JIRA dashboard via our [website|http://www.atlassian.com/starter/youslayedthedragon.jsp].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394596</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">207520607</id>
<property name="body"><![CDATA[{color:red}This page is a DRAFT and is visible to{color} {color:red}{*}Atlassian staff only{*}{color}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge08.png!
{column}
{column}
_Is there life after Dragons?_

Now that you have successfully set up your Atlassian integrated suite, we have some useful information about what you may want to do next. There's no rush. Get to know the applications and show off your T-shirt for a while first. Then choose any of the points below that may be relevant to you.
{column}
{section}

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Hints and Tips

These hints may be useful in the early days after you complete your initial setup.

h4. Managing Users

{color:red}wait the cache refresh or create other users using the JIRA console.[http://forums.atlassian.com/thread.jspa?messageID=257322031]
Check with the Crowd team -- what should we recommend: cache or go via JIRA? Which cache and what are the recommended settings?
{color}

h2. Using JIRA, Bamboo and FishEye within your IDE

This information is useful to developers who use [Eclipse|http://www.eclipse.org/] or [IntelliJ IDEA|http://www.jetbrains.com/idea/]. You can work with JIRA issues, Bamboo builds and FishEye links directly within your IDE (integrated development environment), using the [Atlassian IDE Connectors|http://www.atlassian.com/software/ideconnector/]. The connectors are *free*.

h4. Atlassian Connector for Eclipse

h5. In a Hurry?

Follow our [connector installation guide for Eclipse|IDEPLUGIN:Installing the Eclipse Connector].

h5. In More Detail

|| Installation | You can install the connector directly from the Eclipse software updates manager, or via the Mylyn Connector Discovery wizard, or from a zipped archive. Follow our [installation guide|IDEPLUGIN:Installing the Eclipse Connector]. |
|| Functional Overview | Our [website|http://www.atlassian.com/software/ideconnector/eclipse.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
{include:IDEPLUGIN:_Summary Bamboo in Eclipse|nopanel=true} 
\\
\\
Working with [FishEye in Eclipse|IDEPLUGIN:Using Bamboo in the Eclipse Connector]:
* Open a file from Eclipse in FishEye.
* Send your colleagues a FishEye link to your file.
\\
\\
Working with JIRA issues in Eclipse:
* For information on setting up your JIRA server in Eclipse, please read the [configuration guide|IDEPLUGIN:Configuring your JIRA Options in Eclipse].
* Please refer to the [JIRA Mylyn documentation|JIRAEXT:Mylyn#usage] for guidelines. |

h4. Atlassian Connector for IntelliJ IDEA

h5. In a Hurry?

Follow our [connector installation guide for IntelliJ IDEA|IDEPLUGIN:Installing the IntelliJ Connector].

h5. In More Detail

|| Installation | You can install the connector from the 'Plugins' menu in IntelliJ IDEA. Follow our [installation guide|IDEPLUGIN:Installing the IntelliJ Connector]. |
|| Functional Overview | Our [website|http://www.atlassian.com/software/ideconnector/intellij.jsp] has an overview and some videos. |
|| User Guide | Working with [Bamboo builds in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary Bamboo in IDEA|nopanel=true}
\\
\\
Working with [FishEye in IDEA|IDEPLUGIN:Using Bamboo in the IntelliJ Connector]:
* Open a file from Eclipse in FishEye.
* Send your colleagues a FishEye link to your file.
\\
\\
Working with [JIRA issues in IDEA|IDEPLUGIN:Using JIRA in the IntelliJ Connector]:
{include:IDEPLUGIN:_Summary JIRA in IDEA|nopanel=true} |

h2. Adding More Atlassian Tools to your Suite

This section contains information on additional Atlassian developer tools that you can add to your integrated suite:
* [Crucible] for code reviews.
* [Clover] for code coverage.



h4. Crucible for Code Reviews

{color:red}
Overview plus link to WAC page.
Note: Can also use within Eclipse/IDEA
{color}


h4. Clover for Code Coverage

{color:red}
Do you want to know how much of your code is covered... [Clover]
Overview plus links to WAC page.
{color}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">207487912</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">209616920</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_02.png!
_Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowd|http://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

{include:_Dragons JIRA Database|nopanel=true}

{anchor:install}
h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unpack the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="secret"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="secret"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard and then enable some JIRA features that are required for the later stages in this integration procedure.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
(!) Make sure you have a *JIRA 4* license. Existing 3.x licenses will not work.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}.
#** Password -- Enter a password for the administrator account and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}.
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color} and perform the following configuration steps:
{include:_Dragons Partial JIRA Setup|nopanel=true}
# Log out of JIRA, but leave JIRA running. (Click the dropdown arrow next to the name '*Charlie of Atlassian*', then select '*Log Out*'.)
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

{include:_Dragons Hook JIRA Up to Crowd|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:project}
h2. Step 5. Set up a Project and Create your JIRA Dashboard

{include:_Dragons Create JIRA Project|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

{include:_Dragons JIRA Victory|nopanel=true}

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge02.png!
{column}
{column}
h5. Don your Chain Mail and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=JIRA+is+hot%2C+the+dragon+is+not!+I've+completed+stage+2+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http%3A%2F%2Ftr.im%2FAOZ9].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA].
{column}
{section} ]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">209584151</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">2608</id>
<property name="name"><![CDATA[bamboo]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2006-08-01 20:54:40.424</property>
<property name="lastModificationDate">2008-06-10 22:50:55.021</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168069345</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] integrates [JIRA|http://www.atlassian.com/software/jira] issues into your IDEA development environment. 
{excerpt}

+_Screenshot: JIRA Issues in an IDEA Tool Window_+
\\
\\
!!IDEPLUGIN:_Flagship Image for IDEA JIRA^JIRAWithContextMenu.png|border=1,bordercolor=gray!^JIRAWithContextMenu.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168004097</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168069341</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description

{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] lets you work with your [Crucible|http://www.atlassian.com/software/crucible] code reviews within your IDEA development environment. {excerpt}
_{+}Screenshot: Crucible Reviews in an IDEA Tool Window{+}_\\
\\ !IDEPLUGIN:_Flagship Image for IDEA Crucible^CrucibleReview.png|border=1,bordercolor=gray!

h2. Full Description

{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix

{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168004093</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168069337</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for IDEA and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [IntelliJ IDEA|http://www.jetbrains.com/idea/] displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your IDEA development environment. 
{excerpt}

+_Screenshot: Bamboo Builds in an IDEA Tool Window_+
\\
\\
!IDEPLUGIN:_Flagship Image for IDEA Bamboo^BambooFailedTests.png|border=1,bordercolor=gray! 

{tip:title=The above screenshot shows a preview of functionality coming soon in version 2.0 of the Atlassian IDE Plugin for IDEA}

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for IDEA|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [IntelliJ IDEA|http://www.jetbrains.com/idea/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for IDEA Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for IDEA|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168004089</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">168069335</id>
<property name="body"><![CDATA[This page introduces the Atlassian IDE Plugin for Eclipse and provides links to more information.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
The Atlassian IDE Plugin for [Eclipse|http://www.eclipse.org/] displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your Eclipse development environment. 
{excerpt}

+_Screenshot: Bamboo Watched Plans and Build Log in Eclipse_+
\\
\\
!IDEPLUGIN:_Flagship Image for Eclipse Bamboo^EclipseBuildLog.png|border=1,bordercolor=gray!

h2. Full Description
{include:IDEPLUGIN:_About the IDE Plugin for Eclipse|nopanel=true}

h2. Components

The Atlassian IDE Plugin is a plugin, which you will install and configure in [Eclipse|http://www.eclipse.org/].

h2. Version Matrix
{include:IDEPLUGIN:_Version Compatibility for Eclipse Plugin|nopanel=true}

h2. Documentation

Please refer to the [Atlassian IDE Plugin documentation|IDEPLUGIN:]:
{children:page=IDEPLUGIN:IDE Plugin for Eclipse|depth=1}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">168004087</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">200676309</id>
<property name="body"><![CDATA[Beware of fiends and dragons on the gargoyled eaves. You are embarking on stage 2 of the [Atlassian Dragon Quest|Here Be Dragons]. Take heart, be strong and you will prevail.

In this stage, you will install [Atlassian JIRA|http://www.atlassian.com/software/jira] for bug tracking and issue management. You will also hook JIRA up to [Crowdhttp://www.atlassian.com/software/crowd], for SSO and centralised user management.

*Time estimate:* This stage will take approximately *60 minutes* {color:red}*(TBC)*{color}

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your JIRA Database in PostgreSQL

Now you will create a database where the Atlassian JIRA application will store its data, and the user that JIRA will use to connect to the database. We're assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We're using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostGreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Start *pgAdmin III*.
# Add a new login role called 'jirauser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{jirauser}}.
#* Enter a '*Password*' (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'jira':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{jira}}.
#* Select the '*Owner*': {{jirauser}}.
#* Click '*OK*' to create the database.
{panel}

+_Screenshot 1 (click to enlarge): JIRA database and user in PostgreSQL_+
\\
\\ 
!PGAdminJIRADB.png|thumbnail!

h2. Step 2. Install JIRA

Requirements: *JIRA 4.0.0*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the '*Show all*' link above the download buttons, to see all the download file types.
# Download the '*Standalone (ZIP Archive)*' file  for *JIRA 4.0.0*.
# Unzip the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classesjira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = C:/data/jira-home}}
(Note the forward slashes.)
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}\common\lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\conf\server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}\atlassian-jira\WEB-INF\classes\entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For Mac: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Mac OS X' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{expand: For Unix or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/jira/JIRADownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ archive)*' file for *JIRA 4.0.0*.
# Unzip the archive into a directory of your choice, avoiding spaces in the directory name.
# Tell JIRA where to put its JIRA Home directory:
#* Edit the properties file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/jira-application.properties}}. 
#* Complete the following line:
{{jira.home =}}
For example:
{{jira.home = /var/jira-home}}
#* Save the file.
# Connect JIRA to your PostgreSQL database:
#* Add the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]) to your {{\{JIRA_INSTALL\}/common/lib}} directory.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/conf/server.xml}} and update the following attributes in the JDBC {{Resource}} element:
#** {{username="jirauser"}} -- This is the user you created in step 1 [above|#database].
#** {{password="AtlassianDragons"}} -- Enter the password you chose in step 1 [above|#database].
#** {{driverClassName="org.postgresql.Driver"}}
#** {{url="jdbc:postgresql://localhost:5432/jira"}}
#* Delete the following two attributes:
#** {{minEvictableIdleTimeMillis="4000"}}
#** {{timeBetweenEvictionRunsMillis="5000"}}
#* The {{Resource}} element now looks like this:
{code:xml}
<Resource name="jdbc/JiraDS" auth="Container" type="javax.sql.DataSource"
      username="jirauser"
      password="AtlassianDragons"
      driverClassName="org.postgresql.Driver"
      url="jdbc:postgresql://localhost:5432/jira"
      maxActive="20" />
{code}
#* Save the configuration file.
#* Edit the configuration file at {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/entityengine.xml}} and update the following attributes in the {{datasource}} element:
#** {{field-type-name="postgres72"}}
#** {{schema-name="public"}} -- Note the change from upper case "PUBLIC" to lower case "public".
#* The {{datasource}} element now looks like this:
{code:xml}
<datasource name="defaultDS" field-type-name="postgres72"
      schema-name="public"
      helper-class="org.ofbiz.core.entity.GenericHelperDAO"
      check-on-start="true"
      use-foreign-keys="false"
      use-foreign-key-indices="false"
      check-fks-on-start="false"
      check-fk-indices-on-start="false"
      add-missing-on-start="true"
      check-indices-on-start="true">
  <jndi-jdbc jndi-server-name="default" jndi-name="java:comp/env/jdbc/JiraDS"/>
</datasource>
{code}
#* Save the configuration file.
# Start your JIRA server by running {{\{JIRA_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

Full details are in the [JIRA installation guide|JIRA:JIRA Installation and Upgrade Guide].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up JIRA

Now you can run JIRA's Setup Wizard, then hook JIRA up to Crowd so that {color:blue}*Charlie of Atlassian*{color} can log in to JIRA.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# To access JIRA, go to your web browser and type this address: [http://localhost:8080|http://localhost:8080].
# The JIRA Setup Wizard will start up, to guide you through the process of setting up your JIRA server and creating an administration user. Detailed instructions are in the [JIRA documentation|JIRA:Running the Setup Wizard]. Here are the things you need to know for our Dragon Quest:
#* Base URL -- Enter the full website address at which JIRA is running, not just 'localhost'. For example, if your computer name is 'coopers' then the base URL should be: {{http://coopers:8080}}. Or specify a website address, such as {{http://www.foobar.com:8080}}.
#* Leave all the default directories selected.
#* License -- If you do not already have a JIRA license, follow the prompts on the Setup Wizard screen to get an evaluation license key.
#* Administrator account -- This is the JIRA super user, and should be the same as the Crowd super user entered in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd]. Enter the following information:
#** Username: {color:blue}*{{charlie}}*{color}
#** Password -- Enter a password for the administrator account (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#** Full name: {color:blue}*{{Charlie of Atlassian}}*{color}
#** Email address -- We recommend that you give your own email address here.
#* Email notifications -- For the purposes of the Atlassian Dragon Quest, we recommend that you *disable email notifications*.
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
# Configure JIRA to use the wiki renderer for comments and descriptions:
#* Click '*Administration*' in the top navigation bar.
#* Click '*Field Configurations*' in the left-hand panel (in the 'Issue Fields' section).
#* The 'View Field Configurations' screen will appear. Click '*Configure*' next to 'Default Field Configuration'.
#* The 'View Field Configuration' screen will appear. 
#* To change the renderer for comments, click '*Renderers*' next to '*Comment*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
#* To change the renderer for issue descriptions, click '*Renderers*' next to '*Description*' and then select '*{{Wiki Style Renderer}}*' as the 'Active Renderer'. Click '*Update*' and then click it again to confirm the change.
# Turn on time tracking, so that you will be able to log the amount of time you spend working on issues:
#* Click '*Time Tracking*' in the left-hand panel (in the 'Global Settings' section).
#* In the '*Hours Per Day*' field, select the number of hours in your organisation's working day (e.g. 8).
#* In the '*Days Per Week*' field, select the number of days in your organisation's working week (e.g. 5).
#* Leave the '*Time Format*' as '{{pretty}}' and leave the '*Default Unit*' as '{{minute}}'.
#* Click '*Activate*'.
# Turn on the public API:
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Select the '*{{ON}}*' radio button next to '*Accept remote API calls*'.
#* Click '*Update*'.
# Log out of JIRA, but leave JIRA running.
{panel}

+_Screenshot 2: The JIRA Dashboard when you first log in_+
\\
\\
!JIRADashboardOnLogin.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 4. Hook JIRA up to Crowd

Let's hook JIRA up to Crowd for SSO and centralised user management.

{panel:borderStyle=dashed|borderColor=#6e2e28|titleBGColor=#ba756e|bgColor=#ba756e}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. [http://www.foobar.com:8095/crowd].
# Log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{JIRA}}
#* Name: {{jira}}
#* Description: {{Atlassian JIRA}}
#* Password -- Enter the password that JIRA will use to access Crowd (e.g. {{AtlassianDragons}}) and enter it again to confirm it.
#* URL -- Enter the base URL of your JIRA site, as configured in step 3 [above|#setup], e.g. {{http://www.foobar.com:8080}}.
#* Click 'Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your JIRA application:
#* Click the '*Remote Addresses*' tab.
#* Add your JIRA host name, e.g. {{http://www.foobar.com:8080}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Leave Crowd up and running, but shut down JIRA. (Press Ctrl+C in your JIRA server command window.)
# Copy the Crowd client libraries and configuration files to your JIRA installation folder:
#* Delete the existing {{crowd-integration-client-1.6.1.jar}} file from {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}} folder.
#* Copy {{\{CROWD_INSTALL\}/client/crowd-integration-client-2.0.1.jar}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/lib}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd.properties}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes}}.
#* Copy {{\{CROWD_INSTALL\}/client/conf/crowd-ehcache.xml}}
to {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd-ehcache.xml}}.
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/crowd.properties}} file and change the following properties:
#* application.name: {{jira}}
#* application.password -- Enter the password that JIRA will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above (e.g. {{AtlassianDragons}}).
# Edit the {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/osuser.xml}} file. Comment out any existing authentication providers and uncomment the Crowd providers, as instructed in the text of the file itself.
# Edit {{\{JIRA_INSTALL\}/atlassian-jira/WEB-INF/classes/seraph-config.xml}} file. Comment out the 'DefaultAuthenticator' class and uncomment the 'JIRAAuthenticator' class, as instructed in the text of the file itself.
# Start your JIRA server again, and go to your JIRA URL in your browser, e.g. [http://www.foobar.com:8080].
# Log in to JIRA with username {color:blue}*{{charlie}}*{color}.
(/) You are now authenticating via Crowd!
# Turn on external user management in JIRA, so that all user management happens in Crowd rather than JIRA:
#* Click '*Administration*' in the top navigation bar.
#* Click '*General Configuration*' in the left-hand panel (in the 'Global Settings' section).
#* Click '*Edit Configuration*'.
#* Change '*Mode*' to  '*Private*'.
#* Select the '*{{ON}}*' radio buttons next to '*External user management*' and '*External password management*'.
#* Click '*Update*'.
{panel}

+_Screenshot 3: The JIRA application defined in Crowd -- 'Remote Addresses' tab_+
\\
\\
!JIRARemoteAddressesInCrowd.png|thumbnail!

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:project}
h2. Step 5. Set up a Project and Issues in JIRA

# *Create dummy data* \- setup a project {color:blue}{*}Dragons{*}{color}, add two versions (1.0 and 2.0?) ({color:blue}{*}DRA{*}{color}) and create a single issue {color:blue}{*}DRA-1{*}{color} with a time estimate
# (/) *Victory* \- you can see {color:blue}{*}DRA-1{*}{color}
# *Create dashboard* \- create a dashboard {color:blue}{*}Dragon Development Dashboard{*}{color}, add "Assigned To Me" gadget and "Project" gadget. Configure "Project" gadget to point to {color:blue}{*}DRA{*}{color} project.


{include:_Dragons Problem or Victory|nopanel=true}


h2. Victory!

(/) You can now see your project dashboard with 2 gadgets on it!

+_Screenshot 3 (click to enlarge): Charlie's profile showing the groups he belongs to_+
\\
\\
!xxxxxxxxxxxx.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

h5. Slay the Dragon

{color:red}*Add a game here*{color}

h5. Take a Bow and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=I've completed stage 2 of the Atlassian Dragon Quest @AtlassianDragons].
* Go to [Dragons Stage 3 - Install GreenHopper into JIRA]. 
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">200709422</id>
</property>
</object>
<object class="Labelling" package="com.atlassian.confluence.labels">
<id name="id">167411769</id>
<property name="label" class="Label" package="com.atlassian.confluence.labels"><id name="id">167444487</id>
</property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">164496123</id>
</property>
<property name="user"><![CDATA[thomas]]></property>
<property name="creationDate">2008-09-01 06:19:11.630</property>
<property name="lastModificationDate">2008-09-01 06:19:11.630</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">2708</id>
<property name="name"><![CDATA[linking]]></property>
<property name="owner"/><property name="namespace"><![CDATA[global]]></property>
<property name="creationDate">2006-08-15 10:25:17.247</property>
<property name="lastModificationDate">2008-04-13 22:56:27.023</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">8912909</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[nkerzman]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2007-01-25 16:46:36.335</property>
<property name="lastModificationDate">2008-05-20 08:34:05.577</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">224429846</id>
<property name="body"><![CDATA[This page summarises the components of the Atlassian plugin development platform and provides links to more information. Unless otherwise stated, the information here refers to the latest version of the plugin framework. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Atlassian is moving towards wider and more intimate integration between the different applications we develop. Providing a common [plugin framework|PLUGINFRAMEWORK:] is a key part of this initiative, because the plugin framework will help developers (both Atlassians and others) to write plugins that work on more than one of the products. It will also allow plugins on each product to have a consistent look and behaviour from a user's point of view, even when the plugin works on only one application.
{excerpt}

h2. Full Description
{include:PLUGINFRAMEWORK:_About|nopanel=true}

{include:PLUGINFRAMEWORK:_About Plugins|nopanel=true} 

h2. Components

{include:DEVNET:_Components of Plugin Development Platform|nopanel=true}

!DEVNET:_Flagship Image for Plugin Development Platform^PluginPlatform-50pc.png|border=1,bordercolor=gray! 



h2. Version Matrix
{include:PLUGINFRAMEWORK:_Version Compatibility|nopanel=true} 

h2. Documentation

{section}
{column:width=40%}
h6. Plugin Development Platform
Please refer to the [Developer Network|DEVNET:]:
{children:page=DEVNET:Development Platform for Plugin Framework 2|depth=1}
{column}
{column:width=40%}
h6. Plugin Framework --- Latest Version
Please refer to the [Plugin Framework documentation|PLUGINFRAMEWORK:]:
{children:page=PLUGINFRAMEWORK:Plugin Framework Documentation|depth=2}

h6. Plugin Framework --- All Versions
{include:ALLDOC:_All Versions of Plugin Framework Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">224397306</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426930</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.5*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql://localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203394309</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">204406829</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[cmoseley]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2009-11-06 13:37:40.171</property>
<property name="lastModificationDate">2009-11-06 13:37:40.171</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">170034203</id>
<property name="body"><![CDATA[This page summarises the Atlassian Plugin Framework 2, introduces some other components of the plugin development platform, and provides links to more information. Unless otherwise stated, the information here refers to the latest version of the plugin framework. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Atlassian is moving towards wider and more intimate integration between the different applications we develop. Providing a common plugin framework is a key part of this initiative, because the plugin framework will help developers (both Atlassians and others) to write plugins that work on more than one of the products. It will also allow plugins on each product to have a consistent look and behaviour from a user's point of view, even when the plugin works on only one application.
{excerpt}

!DEVNET:_Flagship Image for Plugin Development Platform^PluginPlatform-50pc.png|border=1,bordercolor=gray! 

h2. Full Description
{include:PLUGINFRAMEWORK:_About|nopanel=true}

h2. Components

{include:DEVNET:_Components of Plugin Development Platform|nopanel=true}

{include:PLUGINFRAMEWORK:_About Plugins|nopanel=true} 



h2. Version Matrix
{include:PLUGINFRAMEWORK:_Version Compatibility|nopanel=true} 

h2. Documentation

{section}
{column:width=40%}
h6. Plugin Development Platform
Please refer to the [Developer Network|DEVNET:]:
{children:page=DEVNET:Development Platform for Plugin Framework 2|depth=1}

h6. Latest Version
Please refer to the [Plugin Framework documentation|PLUGINFRAMEWORK:]:
{children:page=PLUGINFRAMEWORK:Plugin Framework Documentation|depth=1}
{column}
{column:width=40%}
h6. All Versions
{include:ALLDOC:_All Versions of Plugin Framework Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001530</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">170034206</id>
<property name="body"><![CDATA[This page summarises the components of the Atlassian plugin development platform and provides links to more information. Unless otherwise stated, the information here refers to the latest version of the plugin framework. Please follow the links to find out about previous versions.

*On this page:*
{toc:minLevel=2|maxLevel=4}

h2. Short Description
{hide}
The excerpt below should contain one or two sentences only, describing in non-technical terms what this integration point does. This excerpt is used in the listing of the integration points.
{hide}

{excerpt}
Atlassian is moving towards wider and more intimate integration between the different applications we develop. Providing a common plugin framework is a key part of this initiative, because the plugin framework will help developers (both Atlassians and others) to write plugins that work on more than one of the products. It will also allow plugins on each product to have a consistent look and behaviour from a user's point of view, even when the plugin works on only one application.
{excerpt}

h2. Full Description
{include:PLUGINFRAMEWORK:_About|nopanel=true}

{include:PLUGINFRAMEWORK:_About Plugins|nopanel=true} 

h2. Components

{include:DEVNET:_Components of Plugin Development Platform|nopanel=true}

!DEVNET:_Flagship Image for Plugin Development Platform^PluginPlatform-50pc.png|border=1,bordercolor=gray! 



h2. Version Matrix
{include:PLUGINFRAMEWORK:_Version Compatibility|nopanel=true} 

h2. Documentation

{section}
{column:width=40%}
h6. Plugin Development Platform
Please refer to the [Developer Network|DEVNET:]:
{children:page=DEVNET:Development Platform for Plugin Framework 2|depth=1}
{column}
{column:width=40%}
h6. Plugin Framework --- Latest Version
Please refer to the [Plugin Framework documentation|PLUGINFRAMEWORK:]:
{children:page=PLUGINFRAMEWORK:Plugin Framework Documentation|depth=2}

h6. Plugin Framework --- All Versions
{include:ALLDOC:_All Versions of Plugin Framework Documentation|nopanel=true}
{column}
{section}
]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">170001533</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">237666332</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_04.png!
_There will be much flapping of wings and breathing of fire. You are embarking on stage 4 of the [Atlassian Dragon Quest|Here Be Dragons]._

In this stage, you will install [Atlassian Confluence|http://www.atlassian.com/software/confluence/], the enterprise wiki. You will hook Confluence up to [Crowd|http://www.atlassian.com/software/crowd] for SSO and centralised user management, and get your JIRA and Confluence sites talking to each other. Then you will create a wiki space, add a dynamic display of JIRA issues to a wiki page, and add a Confluence activity stream to your JIRA dashboard.

*Time estimate:* This stage will take approximately *60 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=2}

{anchor:database}
h2. Step 1. Create your Confluence Database in PostgreSQL

Now you will create a database where the Atlassian Confluence application will store its data, and the user that Confluence will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'confuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the '*Role name*': {{confuser}}.
#* Enter a '*Password*' and enter it again to confirm it.
#* Click the '*Role privileges*' tab.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'confluence':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{confluence}}.
#* Select the '*Owner*': {{confuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the Confluence user:
/opt/PostgreSQL/8.4/bin/createuser -S -d -r -P -E confuser
# Create the Confluence database:
/opt/PostgreSQL/8.4/bin/createdb -O confuser confluence
exit
{noformat}
{panel}
_{+}Screenshot 1 (click to enlarge): Confluence database and user in PostgreSQL{+}_
\\
\\  !PGAdminConfluenceDB.png|thumbnail!

h2. Step 2. Install Confluence

Requirements: *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Download the '*Standalone (ZIP Archive)*' file for *{excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
(!) Do _not_ use the 'Windows Installer' for this integration exercise, because the workflow for configuring an external database is simpler when installing from the zip archive. If you cannot see the 'Zip Archive', click the '*Show all*' link above the download buttons to see all the download file types.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}\confluence\WEB-INF\classes\confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=c:/data/confluence-home}}
(Note the forward slashes.)
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}\conf\server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}\bin\startup.bat}}.
{panel}
{expand}

{expand: For UNIX or Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/confluence/ConfluenceDownloadCenter.jspa].
# Click the 'Linux' tab and download the '*Standalone (TAR.GZ Archive)*' file for *Confluence {excerpt-include:_DragonsVersionNumber-Confluence|nopanel=true}*.
# Unpack the tar.gz archive into a directory of your choice, avoiding spaces in the directory name.
# Tell Confluence where to put its Confluence Home directory:
#* Edit the properties file at {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/confluence-init.properties}}.
#* Remove the hash sign (#) in front of the following line, and enter the directory name:
{{\# confluence.home=c:/confluence/data}}
For example:
{{confluence.home=/var/confluence-home}}
#* Save the file.
# Because Confluence will be running on the same machine as JIRA (already installed), you need to ensure that the application server ports for Confluence and JIRA are different. By default, both applications use port 8080. Change the default Confluence port as follows:
#* Edit the configuration file at {{\{CONFLUENCE_INSTALL\}/conf/server.xml}}.
#* Change the value of the {{port}} attribute in the {{Connector}} element to {{8090}}.
# Start your Confluence server by running {{\{CONFLUENCE_INSTALL\}/bin/startup.sh}}.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:setup}

h2. Step 3. Set Up Confluence

Now you can run Confluence's Setup Wizard and change some configuration settings.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access Confluence, go to your web browser and type this address: [http://localhost:8090|http://localhost:8090].
# The Confluence Setup Wizard will start up, to guide you through the process of setting up your Confluence server and creating an administration user. Detailed instructions are in the [Confluence documentation|DOC:Confluence Setup Guide].
# Enter your Confluence license into the 'License Key' field. If you do not already have a Confluence license, follow the prompts on the Setup Wizard screen to generate an evaluation license online.
# Click '*Production Installation*' under 'Choose Installation Type'.
# The 'Choose a Database Configuration' screen will appear. Connect Confluence to your PostgreSQL database:
#* In the 'External Database' section, ensure that 'PostgreSQL' is selected and click the '*External Database*' button.
#* The 'Configure Database' screen will appear. Click the '*Direct JDBC*' button in the 'Direct JDBC Connection' section.
#* Enter the following information:
#** Driver Class Name: {{org.postgresql.Driver}} -- This is the default value.
#** Database URL: {{jdbc:postgresql://localhost:5432/confluence}} -- This is the default value.
#** Username: {{confuser}} -- This is the user you created in step 1 ([above|#database]).
#** Password -- Enter the password that you chose in step 1 ([above|#database]).
#* Click the '*Next*' button. You might need to wait a few minutes while Confluence sets up its database.
# On the 'Load Content' screen, click the '*Example Site*' button to include the demonstration space content into your Confluence installation:.
# The 'Setup System Administrator' screen will appear. Enter the following information:
#* Username: {color:blue}{{{}{*}charlie{*}{}}}{color}
#* Password -- Enter a password for the administrator account and enter it again in the 'Confirm' field to confirm it.
#* Name: {color:blue}{{{}{*}Charlie of Atlassian{*}{}}}{color}
#* Email -- We recommend that you give your own email address here.
# Click the '*Next*' button.
# The 'Confluence Setup Successful' screen will appear. Click '*Start using Confluence now*'.
# The home page of the Confluence 'Demonstration Space' will appear.
# Finally, you need to change your Confluence Server Base URL to the full (website) address at which Confluence is running, not just 'localhost':
#* Open the '*Browse*' menu at the top of the screen and select '*Confluence Admin*'. Confirm your password when prompted.
#* The 'Administration Console' screen will appear. Click '*General Configuration*' under 'Configuration' in the left-hand panel.
#* The 'General Configuration' screen will appear. Click any of the '*Edit*' links.
#* In the '*Server Base Url*' field of the 'Site Configuration' section, enter the full website address at which Confluence is running. This address should not be 'localhost'. For example, if your computer name is 'coopers' then the server base URL should be: {{{nolink}[http://coopers:8090]{nolink}}}. Alternatively, specify a website address such as {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Scroll down to the end of the page and click the '*Save*' button.
{panel}

_{+}Screenshot 2 (click to enlarge): Home page of the Confluence demo space{+}_
\\
\\  !ConfluenceDemoSpace-v5.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:crowd}

h2. Step 4. Hook Confluence up to Crowd

In this step you will configure Confluence to use Crowd for SSO and centralised user management. To do that, you will define the Confluence application in Crowd, define the Crowd user directory in Confluence , and configure the SSO property files. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}} and go to your Crowd URL in your browser, e.g. {nolink}[http://www.foobar.com:8095/crowd]{nolink}.
# Log in to Crowd with username {color:blue}{{{}{*}charlie{*}{}}}{color}.
# Click '*Applications*' in the top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{Confluence}}
#* Name: {{confluence}}
#* Description: {{Atlassian Confluence}}
#* Password -- Enter a password that Confluence will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your Confluence site, as configured in step 3 [above|#setup], e.g. {{{nolink}[http://www.foobar.com:8090]{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '{{{*}Crowd{*}}}' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your Confluence application:
#* Click the '*Remote Addresses*' tab.
#* Add your Confluence host name, excluding the "http://www." prefix and the ":8090" port number. e.g. {{foobar.com}}.
#* If this address is not already present, add it: {{127.0.0.1}}.
# Connect Confluence to the Crowd user directory:
#* Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* Select '*User Directories*' from the '*Security*' section of the Confluence Administration Console.
#* Click '*Add Directory*', select type '*Atlassian Crowd*' and click '*Next*'.
#* The Crowd server configuration screen will appear. Enter the following information:
#** Name -- Accept the default value, {{Crowd Server}}.
#** Server URL -- Enter the web address of your Crowd server, e.g. {{http://www.foobar.com:8095/crowd}}
#** Application Name: {{confluence}}. This is the application name that you used to define Confluence in the Crowd 'Add Application' wizard above.
#** Application Password -- Enter the password that you defined for Confluence in the Crowd 'Add Application' wizard above.
#** Crowd Permissions -- Select {{Read/Write}}.
#* Leave the other settings at their default values and click the '*Test Settings*' button to test the connection.
#* When you have a working connection, click '*Save*'.
#* The 'User Directories' screen will appear. Now you will move the Crowd directory to the top of the list of directories. Click the *blue upward arrow* in the '*Order*' column next to the '*Crowd Server*', so that the Crowd directory moves to the top of the list.
{include:USERMAN:_Directory Order Description}
# Log out of Confluence, but leave Confluence running.
# Log in to Confluence again, with the same username {color:blue}*{{charlie}}*{color} and Charlie's password in Crowd.
(/) You are now authenticating via Crowd!
# Leave Crowd up and running, but shut down Confluence. (Press Ctrl+C in your Confluence server command window or run {{\{CONFLUENCE_INSTALL\}\bin\shutdown.bat}} (on Windows) or {{\{CONFLUENCE_INSTALL\}/bin/shutdown.sh}} (on UNIX).)
# Configure the Confluence property files for SSO:
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/seraph-config.xml}} file. 
#* Comment out the default {{authenticator}} node:
{code:xml}
<!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> -->
{code}
#* Uncomment the line that contains the new authenticator: 
{code:xml}
<authenticator class="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>
{code}
#* Save the {{seraph-config.xml}} file.
#* Copy the {{crowd.properties}} file from {{\{CROWD_INSTALL\}/client/conf/}} to {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes}}, replacing the existing file.
#* Edit the {{\{CONFLUENCE_INSTALL\}/confluence/WEB-INF/classes/crowd.properties}} file and change the following properties:
#** application.name: {{confluence}}
#** application.password -- Enter the password that Confluence will use to access Crowd. This must be the same password as you entered in the Crowd 'Add Application' wizard above.
#* Save the {{crowd.properties}} file.
# (/) You now have SSO across Confluence, JIRA and Crowd! Try it:
#* Start your Confluence server again, and go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
#* If you are already logged in to Crowd, you will not need to log in to Confluence. SSO ensures that you are already logged in as {color:blue}*charlie*{color}.
#* Log out of Confluence.
#* Go to Crowd and click an option. Crowd will prompt you to log in. When you logged out of Confluence, SSO ensured that you logged out of Crowd and JIRA too.
#* Log in to JIRA, Confluence or Crowd. You will be logged in to all three.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application] and the [Confluence administrator's guide|DOC:Connecting to Crowd or JIRA for User Management]. 

{include:_Dragons Problem or Victory|nopanel=true}

{anchor:trust}

h2. Step 5. Get JIRA and Confluence Talking

In this step you will set up the trusted communication channel between your JIRA and Confluence sites, so that you can display JIRA information on Confluence pages and Confluence information on the JIRA dashboard. This will be a two-way trust relationship: Confluence will trust JIRA and JIRA will trust Confluence. You will also make your Confluence gadgets available in JIRA.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Make sure that both JIRA and Confluence are running. 
# Go to your Confluence URL in your browser, e.g. [http://www.foobar.com:8090].
# Select '*Application Links*' from the '*Administration*' section of the Confluence Administration Console.
# The 'Configure Application Links' screen will appear. Click '*Add Application Link*'.
# The first screen of the 'Add Application Link' wizard will appear. Copy the base URL for your JIRA site (e.g. {{[http://coopers:8080]}} or {{[http://www.foobar.com:8080]}}) and paste it into the '*Server URL*' field.
# Click '*Next*'.
# The 'Link to JIRA' screen will appear. Enter the following information:
#* Create a link back to this server -- This option is selected by default. Let it remain selected.
#* Username: {{charlie}}. This is the username of the administrator on your JIRA site.
#* Password -- Enter Charlie's password in JIRA.
#* Reciprocal Link URL -- Leave this field at its default value, pointing to your Confluence site.
# Click '*Next*'.
# The 'Set Users and Trust' screen will appear. Enter the following information:
#* The servers have the same set of users -- This option is selected by default. Let it remain selected.
#* These servers fully trust each other -- This option is selected by default. Let it remain selected.
# Click '*Create*'.
# Now you will make your Confluence gadgets available in JIRA, so that JIRA users will be able to add any Confluence gadget to their dashboards. Go to your JIRA browser window and click '*Dashboards*' in JIRA's top navigation bar.
# Click '*Add Gadget*'.
# The 'Gadget Directory' popup window will appear. Click '*Gadget Subscriptions*'.
# The 'Gadget Subscriptions' popup window will appear. Click '*Add Subscription*'.
# The 'Add Subscriptions' popup window will appear. Copy the base URL for your Confluence site (e.g. {{[http://coopers:8090]}} or {{[http://www.foobar.com:8090]}}) and paste it into the text box on the screen.
# Click '*Add Subscription*'.
# Click '*Finished*'.
(/) The Confluence gadgets are now available in your JIRA gadget directory. You have not yet added them to your JIRA dashboard. We will do that in a later step.
{panel}

_{+}Screenshot 3 (click to enlarge): Adding JIRA as a trusted application in Confluence{+}_
\\
\\  
!ConfluenceAppLinks.png|thumbnail!
\\
\\
The Confluence documentation has the details about [application links and trusted applications|DOC:Administering Application Links].

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 6. Create a Wiki Space

Now you can create a space in Confluence. A 'space' is a logical collection of pages, comparable to a library. A space is configurable and managed independently within the wiki site. It is almost like a wiki within a wiki.
(i) The Atlassian Confluence demonstration space was created for you when you [set up Confluence above|#setup].

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboard*' at the top left of the Confluence screen.
# Click '*Add Space*' on the left-hand side of the screen.
# The 'Create Space' screen will appear. Configure your space settings:
#* Enter a space name: {color:blue}{{{}{*}Dragons{*}{}}}{color}
#* Enter a space key: {color:blue}{{{}{*}DRA{*}{}}}{color}
#* Who can use this space? -- Leave the default settings as they are.
#* Choose Theme -- Leave the default settings as they are (that is, '*Global Look and Feel*').
#* Click '*OK*'.
# The 'Home' page of your new 'Dragons' space will appear, with some default content. Now you can edit the home page as you like. For this exercise, you will add a {color:blue}{*}Charlie badge{*}{color}:
#* Right-click on the image of the {color:blue}{*}Charlie badge{*}{color} [at the bottom of this documentation page|#charlie] and save it to your desktop. The file name is '{{dragon_badge04.png}}'.
#* Click '*Edit*' at the top right of your new Dragons home page in your own Confluence site.
#* The wiki rich text editor will open. If prompted, allow '*Gears*' access to your site. This will allow you to drag and drop images and other attachments onto your wiki page.
#* Select and delete all the text in the editor pane. You will start with an empty page.
#* Make sure your cursor is at the top of the editor pane.
#* Click the '*Insert/Edit Image*' icon !InsertImageIcon.png! in the editor toolbar.
#* The 'Insert Image' popup window will appear. Browse to your desktop and upload the {color:blue}{*}Charlie badge{*}{color} image that you saved earlier. Alternatively, you can drag and drop the image from your desktop into the 'Insert Image' window.
#* The image will appear in the preview panel of the 'Insert Image' window. Click '*Insert*'.
#* The image will appear in the editor pane of your home page.
#* Click '*Save*' to save your updated wiki page.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Step 7. Add Some JIRA Issues to your Confluence Page

Now you can put some interesting JIRA content into your page. What's more, you can insert an issue into JIRA directly from your Confluence page and then display the issue on the page.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Edit the Confluence page again.
# Place your cursor immediately after your {color:blue}{*}Charlie badge{*}{color} image and press '*Enter*' to start a new line.
# Enter the following text onto the page: {{My JIRA issues}}.
# Select the text that you have just entered and format it as a heading level 2. (Click the formatting dropdown menu on the left-hand edge of the editor tool bar. By default it formats your text as 'Paragraph'.)
# Deselect the text and then press '*Enter*' to start a new line.
# Follow the steps below to add a JIRA macro to your page, showing a dynamic list of issues drawn from the '{color:blue}{*}Dragons{*}{color}' project on your JIRA site. 
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Search*' in the left-hand panel.
#* Enter the following JQL (JIRA Query Language) into the search box: {{project = DRA}}.
#* Click '*Search*'.
#* A list of issues will appear, matching your search query. Select the option to '*Insert all query results as a table*'.
#* Click '*Insert*'.
#* The JIRA macro will appear on your page. In edit mode it looks like this:
{code:xml}
{jira:project = DRA|server=Your Company JIRA}
{code}
# Click the '*Preview*' tab to see a preview of the page. You will see a list of the JIRA issues in your {color:blue}'*Dragons*'{color} project.
# Click the '*Rich Text*' tab to return to the editor.
# Enter the following text onto the page, and format it as a heading level 2: {{Reporting a new issue}}.
# Start a new line.
# Follow the steps below to add a new issue into JIRA and display the issue on your Confluence page:
#* Click the '*Insert JIRA Issue*' icon !InsertJIRAIcon.png! in the editor toolbar.
#* The 'Insert JIRA Issue' popup window will appear. Click '*Create New Issue*' in the left-hand panel.
#* Enter the following information:
#** Project: {{Dragons}}
#** Issue Type: {{Bug}}
#** Summary: {{The purple dragon melted my chocolate}}
#** Version/s: {{2.0.S2}}
#** Description: {{The dragon tried to eat my chocolate and flamed it by mistake.}}
#* Click '*Insert*'.
#* You now have a new issue {color:blue}{{*DRA-4*}} in JIRA. In addition, a new JIRA macro will appear on your Confluence page, showing only the issue that you have created in JIRA. In edit mode the macro looks like this:
{code:xml}
{jira:DRA-4|server=Your Company JIRA}
{code}
# Save the page.
{panel}

_{+}Screenshot 4 (click to enlarge): Your updated Dragons home page in Confluence{+}_
\\
\\  !ConfluenceHomePage.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}


h2. Step 8. Add a Confluence Gadget to JIRA

Now you will add the Confluence 'Activity Stream' gadget to your JIRA {color:blue}{*}Dragon Development Dashboard{*}{color}.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click '*Dashboards*' at top left of your JIRA screen.
# Your 'Dragon Development Dashboard' will appear. Click '*Add Gadget*'.
# The 'Gadget Directory' will appear, showing a list of the available gadgets for your JIRA dashboard. Enter 'activity' into the search box at top right of the Gadget directory screen.
# The list of gadgets will change, to show only the gadgets that match your search term. You will see two '*Activity Stream*' gadgets, once for JIRA and one for Confluence. To find the Confluence one, look at the *gadget URL* and find the URL that contains port '*8090*'.
# Click '*Add it Now*' under the appropriate gadget. The gadget will be highlighted for a short time and the button's wording will change to 'Adding', while JIRA adds the gadget to the dashboard.
# Click '*Finished*' to go back to your dashboard.
# Configure the '*Activity Stream*' gadget:
#* Enter '*Confluence Dragons Activity*' in the '*Title*' field.
#* Select '*Dragons*' in the '*Projects*' field.
#* Click the dropdown arrow next to '*Refresh Interval*' and select '*Every 15 Minutes*'.
#* Leave the other fields at their default values and click '*Save*'.
# Re-arrange your dashboard:
#* Drag the '*Projects*' gadget to the right and drop it under the '*Assigned to Me*' gadget.
#* Drag the '*Agile Gadget*' to the bottom right.
# Choose a different colour for your '*Activity Stream*' gadget:
#* Move your cursor pointer over the gadget and click the downward-pointing arrow at top right of the gadget frame.
#* Select the {color:red}{*}red{*}{color} square in the row of colours.
{panel}

{include:_Dragons Problem or Victory|nopanel=true}

h2. Victory\!

Your JIRA dashboard now has 4 gadgets:
* The Confluence 'Activity Stream' gadget
* The 'Assigned to Me' gadget
* The 'Projects' gadget
* The GreenHopper 'Agile Gadget'

_{+}Screenshot 5 (click to enlarge): JIRA dashboard with 4 gadgets{+}_
\\
\\  !JIRADashboardStage4-v5.png|thumbnail!\\
\\
{include:_Dragons Problem or Victory|nopanel=true}
{section}
{column:width=125px}
{anchor:charlie}
!_Dragons Images^dragon_badge04.png!
{column}
{column}

h5. Grab your Shield and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Confluence+is+on+fire!+I've+completed+stage+4+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons+http://atlss.in/dragonquest].
* Go to [Dragons Stage 5 - Install FishEye|Dragons Stage 5 - Install FishEye and Crucible].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">237568030</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426543</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.5*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{/opt/fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393878</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">203426519</id>
<property name="body"><![CDATA[!_Dragons Images^dragon_05.png!
_You are embarking on stage 5 of the [Atlassian Dragon Quest|Here Be Dragons], a place filled with flame and serpents and dragons._

In this stage, you will install [FishEye|http://www.atlassian.com/software/fisheye] for breathtaking overviews of your source code repository. Prepare to be blown away by FishEye's integration with JIRA, Crowd and Bamboo.

*Time estimate:* This stage will take approximately *30 minutes*.

*On this page:*
{toc:minLevel=2|maxLevel=4}

{anchor:database}
h2. Step 1. Create your FishEye Database in PostgreSQL

Now you will create a database where FishEye will store its data, and the user that FishEye will use to connect to the database. We are assuming that you have already created your PostgreSQL database server in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd].

(i) We are using [pgAdmin III|http://www.pgadmin.org/], the administration user interface supplied with PostgreSQL. If you used the one-click installer in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd], pgAdmin III will be already installed on your computer.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Start *pgAdmin III*.
# Add a new login role called 'fishuser':
#* Right-click '*Login Roles*' and select '*New Login Role*'.
#* Enter the role '*Role name*': {{fishuser}}.
#* Enter a suitable '*Password*' and enter it again to confirm it.
#* Select '*Can create database objects*'.
#* Select '*Can create roles*'.
#* Click '*OK*' to create the user.
# Add a new database called 'fisheye':
#* Right-click '*Databases*' and select '*New Database*'.
#* Enter the database '*Name*': {{fisheye}}.
#* Select the '*Owner*': {{fishuser}}.
#* Click '*OK*' to create the database.
{panel}

*Alternatively,* If you are on UNIX and do not have pgAdmin III, you can use the command line interface instead. Assuming that you are using the default installation directory of {{/opt/PostgreSQL/8.3/bin/}}, enter the following commands:
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
{noformat}
sudo -s -H -u postgres
# Create the FishEye user:
/opt/PostgreSQL/8.3/bin/createuser -S -d -r -P -E fishuser
# Create the FishEye database:
/opt/PostgreSQL/8.3/bin/createdb -O fishuser fisheye
exit
{noformat}
{panel} 

+_Screenshot 1 (click to enlarge): FishEye database and user in PostgreSQL_+
\\
\\
!PGAdminFishEyeDB.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:install} 
h2. Step 2. Install FishEye

Requirements: *FishEye 2.0.5*. 

{expand: For Windows: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{c:\fisheye}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory. (Open your Windows '*Control Panel*'. Click '*System*' to open the 'System Properties'. Click the '*Advanced*' tab. Click '*Environment Variables*'. Add a new '*System variable*' with the name '{{FISHEYE_INST}}' and a value of your new directory's location of e.g. {{C:\data\fisheye}}.)
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{\lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{\lib}} directory.
# Start FishEye from the command line by running {{bin\run.bat}} from your FishEye installation directory.
{panel}
{expand}

{expand: For Linux: (click to expand)}
{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Go to the Atlassian [download centre|http://www.atlassian.com/software/fisheye/FishEyeDownloadCenter.jspa].
# Download the '*FishEye 2.0.5*' zip archive.
# Unpack the zip archive into a directory of your choice, avoiding spaces in the directory name. For example: {{/opt/fecru-x.x.x}}. We will now refer to this location as the FishEye installation directory.
# Now you will create another directory where FishEye will store its local data, separate from the installation directory:
#* Create the new directory, e.g. {{C:\data\fisheye}}.
#* Create an environment variable called '{{FISHEYE_INST}}' and point it to your new directory.
#* Copy the {{config.xml}} file from the root of your FishEye installation directory to the root of your new {{FISHEYE_INST}} directory.
# Now you will make your PostgreSQL driver available to FishEye:
#* Create a {{/lib}} directory as a sub-directory of your new {{FISHEYE_INST}} directory.
#* Copy the PostgreSQL JDBC driver JAR (downloaded in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#install-crowd]) to the new {{/lib}} directory.
# Start FishEye from the command line by running {{./bin/run.sh}} from your FishEye installation directory.
{panel}
{expand}

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:setup}
h2. Step 3. Set Up FishEye and Connect to PostgreSQL Database

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# To access FishEye, go to your web browser and type this address: {{http://localhost:8060/}} (or type the host name or IP address instead of {{localhost}}). 
# Choose an administration password, enter it and then enter it again to confirm it.
# Enter your FishEye license into the '*FishEye License Key*' field. If you do not already have a FishEye license, follow the prompts on the FishEye/Crucible Setup screen to get an evaluation license key. 
(i) If you have a [Crucible|http://www.atlassian.com/software/crucible] license as well as a FishEye license, you could enter the Crucible license on this screen too. But for the purposes of this integration exercise, we will assume you do not want to enable Crucible at this stage.
# Click '*Save*'.
# Click '*Admin Interface*' to go to the FishEye administration screens.
# The 'Repository List' screen appears. Click '*Database Configuration*' in the left-hand panel.
# Select '*PostgreSQL*' from the '*Type*' dropdown list.
# Enter the following details:
#* URL: {{jdbc:postgresql//localhost:5432/fisheye}}
#* User Name: {{fishuser}} -- This is the user you created in step 1 ([above|#database]).
#* Password -- This is the password you chose in step 1 ([above|#database]). 
# Click '*Test Connection*' to verify that FishEye can log in to the database. If this fails, verify that you have the PostgreSQL JDBC driver JAR file in the {{FISHEYE_INST/lib}} directory (see step 2 [above|#install]). Note that this is _not_ your installation directory. Also ensure that the database user can log in to the database from the machine that FishEye is running on and that all the required privileges are present. Hint: If you have a virus checker running, there may be a delay in the driver's availability after you have placed the driver JAR into the directory, while the virus checker scans the file. It's worth waiting a while and trying again.
# Click '*Save & Migrate Data*'.
{panel}

+_Screenshot 2 (click to enlarge): FishEye database migration successful_+
\\
\\
!FishEyeDatabaseSetup.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:svn}
h2. Step 4. Connect FishEye to Subversion 

For the purposes of this integration exercise, we have provided a read-only Subversion repository that you can connect to your FishEye 'Dragons' repository. We recommend this repository because:
* We have committed a code change with a JIRA issue key in the commit message, to match a JIRA issue you created earlier. This will allow you to see the JIRA and FishEye integration immediately, without having to do your own commit.
* The sample repository is small, so that FishEye's initial repository indexing process will be fast.

(i) FishEye supports [Subversion|http://subversion.tigris.org] and a number of other repository types. When you start using FishEye outside this integration exercise, you will need to create another FishEye repository and connect it to your source repository as described in the [FishEye documentation|FISHEYE:Adding a Repository]. For this integration exercise, follow the steps below to connect to our sample repository.

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# Click the '*(new)*' part of '*Repository List (new)*' in the left-hand panel of the FishEye Admin interface. 
# The 'Add Repository' screen will appear. Enter the following information:
#* Name: {{Dragons}}.
#* Description: {{Dragons repository}}.
#* Repository type: {{Subversion}}.
#* Enable immediately: {{Yes}}.
#* SVN URL: {{http://dragons.atlassian.com/dragons}}.
#* Path -- Not required for our sample repository.
#* Username and Password -- Not required for our sample repository, because the repository allows anonymous access.
# Click '*Add*'.
# The 'View Repository' screen will appear. Click '*Test Connection*' to verify that Subversion is properly connected to FishEye.
# Click the FishEye logo to return to the FishEye dashboard. You should be able to see the activity stream showing recent commit messages for the repository.
(i) If you do not see any activity, please wait a while for FishEye to finish scanning (indexing) the repository. With our sample SVN repository, this should only take a few minutes.
{panel}

+_Screenshot 3 (click to enlarge): FishEye dashboard with activity stream_+
\\
\\ 
!FishEyeDashboard.png|thumbnail!

Full details are in the [FishEye documentation|FISHEYE:Subversion].

{include:_Dragons Problem or Victory|nopanel=true} 

{anchor:crowd}
h2. Step 5. Hook FishEye up to Crowd

Follow the steps below to hook FishEye up to Crowd for SSO (single sign-on) and centralised user management. 

{panel:borderStyle=dashed|borderColor=#6CADDF|titleBGColor=#C4DEF2|bgColor=#C4DEF2}
# If Crowd is not already running, start it up by running {{\{CROWD_INSTALL\}/start_crowd.bat}}. Open up a new browser window/tab and go to your Crowd URL, e.g. {{{nolink}http://www.foobar.com:8095/crowd{nolink}}}.
# If not already logged in, log in to Crowd with username {color:blue}*{{charlie}}*{color}.
# Click '*Applications*' in Crowd's top navigation bar.
# The 'Application Browser' will appear. Click '*Add Application*' in the left-hand menu.
# This will display the first screen for the 'Add Application' wizard for Crowd. Enter the following information:
#* Application Type: {{FishEye}}
#* Name: {{fisheye}}
#* Description: {{Atlassian FishEye}}
#* Password -- Enter a password that FishEye will use to access Crowd and enter it again to confirm it.
#* URL -- Enter the base URL of your FishEye site, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* Click '*Resolve IP Address*' to ask Crowd to find the '*Remote IP Address*' for you. The value will be something like this: {{127.0.0.1}}.
#* Select the '*{{Crowd}}*' directory that you created in [Dragons Stage 1|Dragons Stage 1 - Install Java, PostgreSQL and Crowd#setup].
#* Select '*Allow all users to authenticate*'.
#* Click '*Add Application*'.
# Check the IP addresses for your FishEye application:
#* Click the '*Remote Addresses*' tab.
#* Add your FishEye host name, e.g. {{{nolink}http://fisheye.foobar.com:8060{nolink}}}.
#* If it's not already present, add: {{127.0.0.1}}.
# Go back to your FishEye browser window/tab.
# Click '*Administration*' at the bottom of the FishEye screen, to go to the FishEye Admin screens.
# Click '*Security*' in the left-hand panel. 
# The 'Authentication Settings' screen will appear. Select '*Setup Crowd authentication*'.
# The '*Crowd Authentication Settings*' screen will appear. Enter the following information:
#* Application name: {{fisheye}}.
#* Application password -- Enter the password you specified in Crowd's 'Add Application' wizard, as described above.
#* Leave the other fields at their default values.
# Click '*Apply*'.
{panel}

Full details are in the [Crowd documentation|CROWD:Adding an Application].

{include:_Dragons Problem or Victory|nopanel=true} 

h2. Victory!

(/) You can now see your source in FishEye. Go to the FishEye dashboard, click the '*Source*' tab and click '{color:blue}*{{Dragons}}*{color}' to browse the contents of your new 'Dragons' repository.

(/) _Hint_: Mark the {color:blue}*Dragons*{color} repository as {color:blue}*Charlie's*{color} favourite, so that Charlie will see all the repository activity on his FishEye activity streams. How? Make sure you are logged in as '{color:blue}*{{charlie}}*{color}', click '*Source*' in the top navigation bar, then click the star next to the '{color:blue}*{{Dragons}}*{color}' repository.

(i) If your repository is large, FishEye may take a while to index all your files. If the index scanning is still underway, you will see a message at the top of the screen saying '{{NOTE: The repository is being scanned, some statistics may not be up to date. ...}}

(/) Want an RSS feed of your repository activity? Go to the '*Activity*' tab on the Dashboard or on the 'Source' view. Click '*Tools*' then '*RSS*'.

(/) Try FishEye's 'Quick Nav' feature for a rapid search of your repository contents. Go to the '*Search*' box at top right of the FishEye screen and start typing '{color:blue}*DRA-*{color}. The results will appear as you type. You should see a link to the initial commit in the repository, like this:
!FishEyeQuickNav.png|border=1,bordercolor=gray!

(/) Click through from the search results (shown above) or via FishEye's '*Source*' tab to see FishEye's view of your source code.

+_Screenshot 4 (click to enlarge): FishEye source repository viewer_+
\\
\\ 
!FishEyeSourceView.png|thumbnail!

{include:_Dragons Problem or Victory|nopanel=true}

{section}
{column:width=125px}
!_Dragons Images^dragon_badge05.png!
{column}
{column}
h5. Don your Armour and Move to the Next Stage

* *Tweet?* [Tweet|http://twitter.com/home?status=Ready+to+be+blown+away+by+FishEye%2C+JIRA+and+Crowd.+I've+completed+stage+5+of+the+Atlassian+Dragon+Quest+%23AtlassianDragons].
* Go to [Dragons Stage 6 - Get JIRA and FishEye Talking].
{column}
{section}]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">203393854</id>
</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">221512532</id>
<property name="body"><![CDATA[{excerpt}
* [Developer Network|DEVNET:]
* [Plugin Framework|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:Gadget Developer Documentation]
* [REST APIs|REST:Guidelines for Atlassian REST API Design]
* [Confluence Development Hub|CONFDEV:Confluence Developer Documentation]
* [JIRA Development Hub|JIRA:JIRA Development Hub]
* [Bamboo Development Hub|Bamboo:Bamboo Development Hub]
* [Crowd Development Hub|CROWDDEV:Crowd Developer Documentation]
* [FishEye/Crucible Development Hub|FECRUDEV:]
* [Clover Development Hub|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
{excerpt}

h5. RELATED TOPICS

[ATLAS:]]]></property>
<property name="content" class="Page" package="com.atlassian.confluence.pages"><id name="id">221447424</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">2402</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[lima]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2006-06-30 09:36:49.400</property>
<property name="lastModificationDate">2008-06-12 12:27:22.673</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">216760330</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[aseith]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2010-04-20 16:31:11.438</property>
<property name="lastModificationDate">2010-04-20 16:31:11.438</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">180617255</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[ploegj]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2009-02-21 02:45:23.406</property>
<property name="lastModificationDate">2009-02-21 02:45:23.406</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">178454546</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[wross@inmedius.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-12-19 14:24:18.005</property>
<property name="lastModificationDate">2008-12-19 14:24:18.005</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">169803786</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[pimmars@atosorigin.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-10-22 16:01:58.062</property>
<property name="lastModificationDate">2008-10-22 16:01:58.062</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">170688524</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[ellen@clifftop.us]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-11-06 10:10:18.940</property>
<property name="lastModificationDate">2008-11-06 10:10:18.940</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">170688545</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[gerhard.mueller@tngtech.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-11-12 09:29:54.990</property>
<property name="lastModificationDate">2008-11-12 09:29:54.990</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">143032322</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[jsc]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-03-10 10:44:35.328</property>
<property name="lastModificationDate">2008-07-17 12:48:40.220</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">238419976</id>
<property name="name"><![CDATA[documentation]]></property>
<property name="owner"/><property name="namespace"><![CDATA[team]]></property>
<property name="creationDate">2011-04-23 22:49:16.822</property>
<property name="lastModificationDate">2011-04-23 22:49:16.822</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">238419986</id>
<property name="name"><![CDATA[dragon-slayer]]></property>
<property name="owner"/><property name="namespace"><![CDATA[team]]></property>
<property name="creationDate">2011-04-23 23:06:52.821</property>
<property name="lastModificationDate">2011-04-23 23:06:52.821</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">238419985</id>
<property name="name"><![CDATA[integration-guide]]></property>
<property name="owner"/><property name="namespace"><![CDATA[team]]></property>
<property name="creationDate">2011-04-23 23:06:34.399</property>
<property name="lastModificationDate">2011-04-23 23:06:34.399</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">105447432</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[tmoore]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2007-11-09 19:43:41.990</property>
<property name="lastModificationDate">2008-06-11 12:43:09.325</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">223543300</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[samyuchao@163.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2010-08-16 10:21:31.748</property>
<property name="lastModificationDate">2010-08-16 10:21:31.748</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">979</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[colinho]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2006-01-09 06:36:48.410</property>
<property name="lastModificationDate">2008-05-07 21:32:06.455</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">166756384</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[bfeustel]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-08-26 14:17:38.118</property>
<property name="lastModificationDate">2008-08-26 14:17:38.118</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">233439251</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[sascha.meinert]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2011-03-02 03:58:05.891</property>
<property name="lastModificationDate">2011-03-02 03:58:05.891</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">172097549</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[alexandre.rey-durin@exane.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-11-18 05:05:33.068</property>
<property name="lastModificationDate">2008-11-18 05:05:33.068</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">22806536</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[mmetcalfe]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2007-03-07 06:06:54.858</property>
<property name="lastModificationDate">2008-03-12 21:27:13.811</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">50</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[bob.swift@lakeviewtech.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2005-09-30 13:10:55.442</property>
<property name="lastModificationDate">2008-06-02 20:41:30.574</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">240746508</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[fcalvoga]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2011-05-04 10:37:37.470</property>
<property name="lastModificationDate">2011-05-04 10:37:37.470</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">167444487</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[thomas]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-09-01 06:19:11.626</property>
<property name="lastModificationDate">2008-09-01 06:19:11.626</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">177963063</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[ethan.cane]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-12-13 10:02:49.640</property>
<property name="lastModificationDate">2008-12-13 10:02:49.640</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">218071057</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[work@pollackworld.us]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2010-05-13 14:57:38.046</property>
<property name="lastModificationDate">2010-05-13 14:57:38.046</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">179240981</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[olmas]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-12-30 13:25:13.019</property>
<property name="lastModificationDate">2008-12-30 13:25:13.019</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">228917274</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[matthias.bauch@avono.de]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2010-12-16 04:36:31.152</property>
<property name="lastModificationDate">2010-12-16 04:36:31.152</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">224329730</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[koprax]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2010-09-16 07:59:01.645</property>
<property name="lastModificationDate">2010-09-16 07:59:01.645</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">169377821</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[mette.larsen@morecom.no]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-10-07 06:39:28.742</property>
<property name="lastModificationDate">2008-10-07 06:39:28.742</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">169377818</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[sob@ekor.no]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-10-04 02:21:27.450</property>
<property name="lastModificationDate">2008-10-04 02:21:27.450</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">169377835</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[emanueleq]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-10-15 10:47:50.607</property>
<property name="lastModificationDate">2008-10-15 10:47:50.607</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">2090</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[david.soul@atlassian.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2006-05-05 00:24:15.628</property>
<property name="lastModificationDate">2008-04-09 01:09:59.932</property>
</object>
<object class="BodyContent" package="com.atlassian.confluence.core">
<id name="id">166037346</id>
<property name="body"><![CDATA[]]></property>
<property name="content" class="SpaceDescription" package="com.atlassian.confluence.spaces"><id name="id">166004749</id>
</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">203718688</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[gul]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2009-10-13 03:44:34.740</property>
<property name="lastModificationDate">2009-10-13 03:44:34.740</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">168230918</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[aheritier]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2008-09-09 15:27:01.270</property>
<property name="lastModificationDate">2008-09-09 15:27:01.270</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">32702473</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[rkrishna]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2007-03-25 19:24:05.450</property>
<property name="lastModificationDate">2008-06-30 22:32:35.271</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">239599617</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[blakeb@httpfactory.com]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2011-05-02 23:28:13.925</property>
<property name="lastModificationDate">2011-05-02 23:28:13.925</property>
</object>
<object class="Label" package="com.atlassian.confluence.labels">
<id name="id">199098384</id>
<property name="name"><![CDATA[favourite]]></property>
<property name="owner"><![CDATA[jaeger@scra.org]]></property>
<property name="namespace"><![CDATA[my]]></property>
<property name="creationDate">2009-08-04 07:51:27.304</property>
<property name="lastModificationDate">2009-08-04 07:51:27.304</property>
</object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416196</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118097</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416189</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">167182425</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416201</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200710347</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[9]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667759</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118104</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502786</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004417</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165119212</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416185</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235668316</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage9-BambooGadgetsandJIRAVictory-Step1.AddJIRAasanOAuthConsumerinBambooandSubscribeJIRAtoBambooGadgets'>Step 1. Add JIRA as an OAuth Consumer in Bamboo and Subscribe JIRA to Bamboo Gadgets</a></li>
    <li><a href='#REV5-DragonsStage9-BambooGadgetsandJIRAVictory-Step2.Add2BambooGadgetstoJIRA'>Step 2. Add 2 Bamboo Gadgets to JIRA</a></li>
    <li><a href='#REV5-DragonsStage9-BambooGadgetsandJIRAVictory-TheBattleisWon%2CtheDragonisSlain'>The Battle is Won, the Dragon is Slain</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148780</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913275</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416181</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391407</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254032</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[During the [Atlassian Dragon Quest|Here Be Dragons], you added just one user to your integrated suite: *Charlie of Atlassian*. Very soon you will want to add more users, and in particular users who are not administrators. You also configured all the Atlassian applications to centralise their user management in JIRA. We recommend that you use JIRA for all user and group management.]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169543</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">170001525</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004495</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169548</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913281</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148780</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004380</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402056</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004417</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#JIRAIssuesonaConfluencePage-ShortDescription'>Short Description</a></li>
    <li><a href='#JIRAIssuesonaConfluencePage-FullDescription'>Full Description</a></li>
    <li><a href='#JIRAIssuesonaConfluencePage-Components'>Components</a></li>
    <li><a href='#JIRAIssuesonaConfluencePage-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496157</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004376</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391389</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165119219</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411670</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223907</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227413907</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage6-GetJIRAandCrucibleTalking-Step1.CreateaCrucibleProjectandLinkYourCrucibleProjecttoYourJIRAProject'>Step 1. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project</a></li>
    <li><a href='#DragonsStage6-GetJIRAandCrucibleTalking-Step2.CreateaReview'>Step 2. Create a Review</a></li>
    <li><a href='#DragonsStage6-GetJIRAandCrucibleTalking-Step3.CreateaJIRAIssuefromaCrucibleReview'>Step 3. Create a JIRA Issue from a Crucible Review</a></li>
    <li><a href='#DragonsStage6-GetJIRAandCrucibleTalking-Step4.AddaCrucibleGadgettoJIRA'>Step 4. Add a Crucible Gadget to JIRA</a></li>
    <li><a href='#DragonsStage6-GetJIRAandCrucibleTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241569253</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411672</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391373</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118152</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148864</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391495</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416201</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416189</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483618</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step1.CreateyourConfluenceDatabaseinPostgreSQL'>Step 1. Create your Confluence Database in PostgreSQL</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step2.InstallConfluence'>Step 2. Install Confluence</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step3.SetUpConfluence'>Step 3. Set Up Confluence</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step4.HookConfluenceuptoCrowd'>Step 4. Hook Confluence up to Crowd</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step5.GetJIRAandConfluenceTalking'>Step 5. Get JIRA and Confluence Talking</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step6.CreateaWikiSpace'>Step 6. Create a Wiki Space</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step7.AddaJIRAGadgetandMacrotoyourConfluencePage'>Step 7. Add a JIRA Gadget and Macro to your Confluence Page</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Step8.AddaConfluenceGadgettoJIRA'>Step 8. Add a Confluence Gadget to JIRA</a></li>
    <li><a href='#ArchivedcopyofDragonsStage4-InstallConfluence-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148864</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2.2.2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118172</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165119212</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913281</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3.5.5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416196</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165119219</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169595</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2.2.2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169591</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1.6]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200710347</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489769</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Step1.InstallGreenHopperPluginintoJIRA'>Step 1. Install GreenHopper Plugin into JIRA</a></li>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Step2.AddAnotherJIRAIssueandaSprint'>Step 2. Add Another JIRA Issue and a Sprint</a></li>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Step3.AddtheGreenHopperGadgettoyourJIRADashboard'>Step 3. Add the GreenHopper Gadget to your JIRA Dashboard</a></li>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416209</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169587</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[8.4.x]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">179438226</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483654</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step1.CreateyourFishEyeDatabaseinPostgreSQL'>Step 1. Create your FishEye Database in PostgreSQL</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step2.InstallFishEye'>Step 2. Install FishEye</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step3.SetUpFishEyeandConnecttoPostgreSQLDatabase'>Step 3. Set Up FishEye and Connect to PostgreSQL Database</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step4.HookFishEyeuptoCrowd'>Step 4. Hook FishEye up to Crowd</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step5.ConnectFishEyetoSubversion'>Step 5. Connect FishEye to Subversion</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707129</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148889</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4.3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483825</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707126</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005062</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241569253</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707123</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005068</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227413907</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169595</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148847</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707149</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005070</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707478</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416181</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005074</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165121103</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416185</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707143</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707140</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169121</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004495</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#JIRAPortletsonaConfluencePage-ShortDescription'>Short Description</a></li>
    <li><a href='#JIRAPortletsonaConfluencePage-FullDescription'>Full Description</a></li>
    <li><a href='#JIRAPortletsonaConfluencePage-Components'>Components</a></li>
    <li><a href='#JIRAPortletsonaConfluencePage-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489799</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step1.CreateyourConfluenceDatabaseinPostgreSQL'>Step 1. Create your Confluence Database in PostgreSQL</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step2.InstallConfluence'>Step 2. Install Confluence</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step3.SetUpConfluence'>Step 3. Set Up Confluence</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step4.HookConfluenceuptoCrowd'>Step 4. Hook Confluence up to Crowd</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step5.GetJIRAandConfluenceTalking'>Step 5. Get JIRA and Confluence Talking</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step6.CreateaWikiSpace'>Step 6. Create a Wiki Space</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step7.AddaJIRAGadgetandMacrotoyourConfluencePage'>Step 7. Add a JIRA Gadget and Macro to your Confluence Page</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Step8.AddaConfluenceGadgettoJIRA'>Step 8. Add a Confluence Gadget to JIRA</a></li>
    <li><a href='#CopyofDragonsStage4-InstallConfluence-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483667</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Step1.AddaJIRAServertoFishEyeandEnableRemoteAPI'>Step 1. Add a JIRA Server to FishEye and Enable Remote API</a></li>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Step2.ConfiguretheFishEyePlugininJIRA'>Step 2. Configure the FishEye Plugin in JIRA</a></li>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Step3.AddaFishEyeGadgettoJIRA'>Step 3. Add a FishEye Gadget to JIRA</a></li>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707136</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489769</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403238</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200710347</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483667</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148669</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570857</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage7-InstallBamboo-Step1.CreateyourBambooDatabaseinPostgreSQL'>Step 1. Create your Bamboo Database in PostgreSQL</a></li>
    <li><a href='#REV6-DragonsStage7-InstallBamboo-Step2.InstallBamboo'>Step 2. Install Bamboo</a></li>
    <li><a href='#REV6-DragonsStage7-InstallBamboo-Step3.SetUpBamboo'>Step 3. Set Up Bamboo</a></li>
    <li><a href='#REV6-DragonsStage7-InstallBamboo-Step4.HookBamboouptoJIRAforUserManagement'>Step 4. Hook Bamboo up to JIRA for User Management</a></li>
    <li><a href='#REV6-DragonsStage7-InstallBamboo-Step5.GetBambooandJIRATalking'>Step 5. Get Bamboo and JIRA Talking</a></li>
    <li><a href='#REV6-DragonsStage7-InstallBamboo-Step6.SetupaProjectandRunaBuild'>Step 6. Set up a Project and Run a Build</a></li>
    <li><a href='#REV6-DragonsStage7-InstallBamboo-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483654</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667967</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235668316</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483246</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">170001525</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254000</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149109</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004506</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">211649471</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
The [big list of all Atlassian gadgets|GADGETS:All Atlassian Gadgets] tells you about all our gadgets, where they come from and where you can put them.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489799</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004495</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391508</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391502</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913217</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483618</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226787473</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149083</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483825</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667941</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496128</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148780</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496132</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913217</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[26]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496136</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403012</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage5-InstallFishEyeandCrucible-Step1.CreateyourFishEyeDatabaseinPostgreSQL'>Step 1. Create your FishEye Database in PostgreSQL</a></li>
    <li><a href='#REV4-DragonsStage5-InstallFishEyeandCrucible-Step2.InstallFishEyeandCrucible'>Step 2. Install FishEye and Crucible</a></li>
    <li><a href='#REV4-DragonsStage5-InstallFishEyeandCrucible-Step3.SetUpFishEye%2FCrucibleandConnecttoPostgreSQLDatabase'>Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database</a></li>
    <li><a href='#REV4-DragonsStage5-InstallFishEyeandCrucible-Step4.HookFishEye%2FCrucibleuptoCrowd'>Step 4. Hook FishEye/Crucible up to Crowd</a></li>
    <li><a href='#REV4-DragonsStage5-InstallFishEyeandCrucible-Step5.ConnectFishEyetoSubversion'>Step 5. Connect FishEye to Subversion</a></li>
    <li><a href='#REV4-DragonsStage5-InstallFishEyeandCrucible-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496139</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483246</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912465</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage1-InstallJIRA-Step1.InstallJava'>Step 1. Install Java</a></li>
    <li><a href='#REV6-DragonsStage1-InstallJIRA-Step2.InstallyourPostgreSQLDatabaseServer'>Step 2. Install your PostgreSQL Database Server</a></li>
    <li><a href='#REV6-DragonsStage1-InstallJIRA-Step3.CreateyourJIRADatabaseinPostgreSQL'>Step 3. Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#REV6-DragonsStage1-InstallJIRA-Step4.InstallJIRA'>Step 4. Install JIRA</a></li>
    <li><a href='#REV6-DragonsStage1-InstallJIRA-Step5.SetUpJIRA'>Step 5. Set Up JIRA</a></li>
    <li><a href='#REV6-DragonsStage1-InstallJIRA-Step6.SetupaProjectandCreateyourJIRADashboard'>Step 6. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#REV6-DragonsStage1-InstallJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223900</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403238</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223101</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage2-InstallJIRA-Step1.CreateyourJIRADatabaseinPostgreSQL'>Step 1. Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#REV4-DragonsStage2-InstallJIRA-Step2.InstallJIRA'>Step 2. Install JIRA</a></li>
    <li><a href='#REV4-DragonsStage2-InstallJIRA-Step3.SetUpJIRA'>Step 3. Set Up JIRA</a></li>
    <li><a href='#REV4-DragonsStage2-InstallJIRA-Step4.HookJIRAuptoCrowd'>Step 4. Hook JIRA up to Crowd</a></li>
    <li><a href='#REV4-DragonsStage2-InstallJIRA-Step5.SetupaProjectandCreateyourJIRADashboard'>Step 5. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#REV4-DragonsStage2-InstallJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233767179</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961680</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage8-BambooGadgetsandJIRAVictory-Step1.AddJIRAasanOAuthConsumerinBamboo'>Step 1. Add JIRA as an OAuth Consumer in Bamboo</a></li>
    <li><a href='#CopyofDragonsStage8-BambooGadgetsandJIRAVictory-Step2.Add2BambooGadgetstoJIRA'>Step 2. Add 2 Bamboo Gadgets to JIRA</a></li>
    <li><a href='#CopyofDragonsStage8-BambooGadgetsandJIRAVictory-TheBattleisWon%2CtheDragonisSlain'>The Battle is Won, the Dragon is Slain</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403238</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004380</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496124</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004376</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223110</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step1.InstallJava'>Step 1. Install Java</a></li>
    <li><a href='#CopyofDragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step2.InstallyourPostgreSQLDatabaseServer'>Step 2. Install your PostgreSQL Database Server</a></li>
    <li><a href='#CopyofDragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step3.CreateyourCrowdDatabaseinPostgreSQL'>Step 3. Create your Crowd Database in PostgreSQL</a></li>
    <li><a href='#CopyofDragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step4.InstallCrowd'>Step 4. Install Crowd</a></li>
    <li><a href='#CopyofDragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step5.SetUpCrowd'>Step 5. Set Up Crowd</a></li>
    <li><a href='#CopyofDragonsStage1-InstallJava%2CPostgreSQLandCrowd-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004417</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149158</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913217</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483533</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Step1.InstallGreenHopperPluginintoJIRA'>Step 1. Install GreenHopper Plugin into JIRA</a></li>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Step2.AddAnotherJIRAIssueandaSprint'>Step 2. Add Another JIRA Issue and a Sprint</a></li>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Step3.Usethe%27Scrum%27TemplateforyourProjectandAddaStory'>Step 3. Use the 'Scrum' Template for your Project and Add a Story</a></li>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Step4.AddtheGreenHopperGadgettoyourJIRADashboard'>Step 4. Add the GreenHopper Gadget to your JIRA Dashboard</a></li>
    <li><a href='#CopyofDragonsStage3-InstallGreenHopperintoJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227413907</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[29]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411932</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage6-GetJIRAandFishEyeTalking-Step1.AddaJIRAServertoFishEyeandEnableRemoteAPI'>Step 1. Add a JIRA Server to FishEye and Enable Remote API</a></li>
    <li><a href='#REV4-DragonsStage6-GetJIRAandFishEyeTalking-Step2.ConfiguretheFishEyePlugininJIRA'>Step 2. Configure the FishEye Plugin in JIRA</a></li>
    <li><a href='#REV4-DragonsStage6-GetJIRAandFishEyeTalking-Step3.AddaFishEyeGadgettoJIRA'>Step 3. Add a FishEye Gadget to JIRA</a></li>
    <li><a href='#REV4-DragonsStage6-GetJIRAandFishEyeTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149141</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215485085</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004380</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#UserandGroupManagementacrossDirectoriesandWebApplications-ShortDescription'>Short Description</a></li>
    <li><a href='#UserandGroupManagementacrossDirectoriesandWebApplications-FullDescription'>Full Description</a></li>
    <li><a href='#UserandGroupManagementacrossDirectoriesandWebApplications-Components'>Components</a></li>
    <li><a href='#UserandGroupManagementacrossDirectoriesandWebApplications-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207487342</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242253971</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">170001525</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#PluginDevelopment-ShortDescription'>Short Description</a></li>
    <li><a href='#PluginDevelopment-FullDescription'>Full Description</a></li>
    <li><a href='#PluginDevelopment-Components'>Components</a></li>
    <li><a href='#PluginDevelopment-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#PluginDevelopment-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004376</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#SingleSign-On%28SSO%29acrossWebApplications-ShortDescription'>Short Description</a></li>
    <li><a href='#SingleSign-On%28SSO%29acrossWebApplications-FullDescription'>Full Description</a></li>
    <li><a href='#SingleSign-On%28SSO%29acrossWebApplications-Components'>Components</a></li>
    <li><a href='#SingleSign-On%28SSO%29acrossWebApplications-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223903914</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149109</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage2-InstallJIRA-Step1.CreateyourJIRADatabaseinPostgreSQL'>Step 1. Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#REV5-DragonsStage2-InstallJIRA-Step2.InstallJIRA'>Step 2. Install JIRA</a></li>
    <li><a href='#REV5-DragonsStage2-InstallJIRA-Step3.SetUpJIRA'>Step 3. Set Up JIRA</a></li>
    <li><a href='#REV5-DragonsStage2-InstallJIRA-Step4.HookJIRAuptoCrowd'>Step 4. Hook JIRA up to Crowd</a></li>
    <li><a href='#REV5-DragonsStage2-InstallJIRA-Step5.SetupaProjectandCreateyourJIRADashboard'>Step 5. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#REV5-DragonsStage2-InstallJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169595</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165121103</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411932</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707464</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483825</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149083</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004976</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Use Test Plugin to test your plugin config
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483825</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step1.CreateyourBambooDatabaseinPostgreSQL'>Step 1. Create your Bamboo Database in PostgreSQL</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step2.InstallBamboo'>Step 2. Install Bamboo</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step3.SetUpBamboo'>Step 3. Set Up Bamboo</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step4.HookBamboouptoCrowd'>Step 4. Hook Bamboo up to Crowd</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step5.GetBambooandJIRATalking'>Step 5. Get Bamboo and JIRA Talking</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step6.SetupaProjectandRunaBuild'>Step 6. Set up a Project and Run a Build</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241569253</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[9]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707478</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912793</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667941</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[10]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226791031</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">229181028</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912793</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402874</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215485085</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912793</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[10]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">167182425</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149046</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004417</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391067</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226791031</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3.5.5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391047</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391049</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961680</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667941</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149046</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416189</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667941</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208142357</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step1.CreateyourFishEyeDatabaseinPostgreSQL'>Step 1. Create your FishEye Database in PostgreSQL</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step2.InstallFishEye'>Step 2. Install FishEye</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step3.SetUpFishEyeandConnecttoPostgreSQLDatabase'>Step 3. Set Up FishEye and Connect to PostgreSQL Database</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step4.ConnectFishEyetoSubversion'>Step 4. Connect FishEye to Subversion</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Step5.HookFishEyeuptoCrowd'>Step 5. Hook FishEye up to Crowd</a></li>
    <li><a href='#CopyofDragonsStage5-InstallFishEye-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223907</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149141</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483654</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241567096</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage4-InstallFishEyeandCrucible-Step1.CreateyourFishEyeDatabaseinPostgreSQL'>Step 1. Create your FishEye Database in PostgreSQL</a></li>
    <li><a href='#REV6-DragonsStage4-InstallFishEyeandCrucible-Step2.InstallFishEyeandCrucible'>Step 2. Install FishEye and Crucible</a></li>
    <li><a href='#REV6-DragonsStage4-InstallFishEyeandCrucible-Step3.SetUpFishEyeandCrucible'>Step 3. Set Up FishEye and Crucible</a></li>
    <li><a href='#REV6-DragonsStage4-InstallFishEyeandCrucible-Step5.ConnectFishEyetoBitbucket'>Step 5. Connect FishEye to Bitbucket</a></li>
    <li><a href='#REV6-DragonsStage4-InstallFishEyeandCrucible-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149158</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004380</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961724</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227413907</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004376</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961722</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416181</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149158</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step1.InstallJava'>Step 1. Install Java</a></li>
    <li><a href='#REV5-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step2.InstallyourPostgreSQLDatabaseServer'>Step 2. Install your PostgreSQL Database Server</a></li>
    <li><a href='#REV5-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step3.CreateyourCrowdDatabaseinPostgreSQL'>Step 3. Create your Crowd Database in PostgreSQL</a></li>
    <li><a href='#REV5-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step4.InstallCrowd'>Step 4. Install Crowd</a></li>
    <li><a href='#REV5-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step5.SetUpCrowd'>Step 5. Set Up Crowd</a></li>
    <li><a href='#REV5-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226791000</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5.6.4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223900</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203390994</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169121</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step1.InstallJava'>Step 1. Install Java</a></li>
    <li><a href='#REV4-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step2.InstallyourPostgreSQLDatabaseServer'>Step 2. Install your PostgreSQL Database Server</a></li>
    <li><a href='#REV4-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step3.CreateyourCrowdDatabaseinPostgreSQL'>Step 3. Create your Crowd Database in PostgreSQL</a></li>
    <li><a href='#REV4-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step4.InstallCrowd'>Step 4. Install Crowd</a></li>
    <li><a href='#REV4-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step5.SetUpCrowd'>Step 5. Set Up Crowd</a></li>
    <li><a href='#REV4-DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149109</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961722</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[During the [Atlassian Dragon Quest|Here Be Dragons], you added just one user to your integrated suite: *Charlie of Atlassian*. Very soon you will want to add more users, and in particular users who are not administrators. You also configured all the Atlassian applications to centralise their user management in JIRA. We recommend that you use JIRA for all user and group management.]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">170001525</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961724</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[If you experience problems with running Bamboo as a Windows service you can start Bamboo in a console window instead, by running {{\{BAMBOO_INSTALL\}\bin\BambooConsole.bat}}.]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667967</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149496</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[11]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168004049</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483667</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416209</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168004049</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402874</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667967</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402056</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage3-InstallGreenHopperintoJIRA-Step1.InstallGreenHopperPluginintoJIRA'>Step 1. Install GreenHopper Plugin into JIRA</a></li>
    <li><a href='#REV4-DragonsStage3-InstallGreenHopperintoJIRA-Step2.AddAnotherJIRAIssueandaSprint'>Step 2. Add Another JIRA Issue and a Sprint</a></li>
    <li><a href='#REV4-DragonsStage3-InstallGreenHopperintoJIRA-Step3.Usethe%27Scrum%27TemplateforyourProjectandAddaStory'>Step 3. Use the 'Scrum' Template for your Project and Add a Story</a></li>
    <li><a href='#REV4-DragonsStage3-InstallGreenHopperintoJIRA-Step4.AddtheGreenHopperGadgettoyourJIRADashboard'>Step 4. Add the GreenHopper Gadget to your JIRA Dashboard</a></li>
    <li><a href='#REV4-DragonsStage3-InstallGreenHopperintoJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223110</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502895</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223179</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148847</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223101</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912793</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage2-InstallGreenHopperintoJIRA-Step1.InstallGreenHopperPluginintoJIRA'>Step 1. Install GreenHopper Plugin into JIRA</a></li>
    <li><a href='#REV6-DragonsStage2-InstallGreenHopperintoJIRA-Step2.AddAnotherJIRAIssueandaSprint'>Step 2. Add Another JIRA Issue and a Sprint</a></li>
    <li><a href='#REV6-DragonsStage2-InstallGreenHopperintoJIRA-Step3.UsetheScrumTemplateforyourProjectandAddaStory'>Step 3. Use the Scrum Template for your Project and Add a Story</a></li>
    <li><a href='#REV6-DragonsStage2-InstallGreenHopperintoJIRA-Step4.AddtheGreenHopperGadgettoyourJIRADashboard'>Step 4. Add the GreenHopper Gadget to your JIRA Dashboard</a></li>
    <li><a href='#REV6-DragonsStage2-InstallGreenHopperintoJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">229181028</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416181</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707158</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707156</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148864</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707163</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227414394</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416189</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005074</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
The Atlassian Connector for IntelliJ IDEA lets you work with your [Crucible|http://www.atlassian.com/software/crucible] code reviews within your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. ]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411672</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411670</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502786</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Step1.AddaJIRAServertoFishEyeandEnableRemoteAPI'>Step 1. Add a JIRA Server to FishEye and Enable Remote API</a></li>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Step2.ConfiguretheFishEyePlugininJIRA'>Step 2. Configure the FishEye Plugin in JIRA</a></li>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Step3.AddaFishEyeGadgettoJIRA'>Step 3. Add a FishEye Gadget to JIRA</a></li>
    <li><a href='#CopyofDragonsStage6-GetJIRAandFishEyeTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005070</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
The Atlassian Connector for IntelliJ IDEA integrates [JIRA|http://www.atlassian.com/software/jira] issues into your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. 
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005068</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
The Atlassian Connector for IntelliJ IDEA displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your [IntelliJ IDEA|http://www.jetbrains.com/idea/] development environment. 
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">179438226</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667761</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2.5.2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004976</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005062</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
The Atlassian Connector for Eclipse displays [Bamboo|http://www.atlassian.com/software/bamboo] build information in your [Eclipse|http://www.eclipse.org/] development environment. 
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496414</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Use Application Links (AppLinks) to link your [JIRA|http://www.atlassian.com/software/jira], [Confluence|http://www.atlassian.com/software/confluence], [FishEye|http://www.atlassian.com/software/fisheye], [Crucible|http://www.atlassian.com/software/crucible] and [Subversion|http://subversion.tigris.org/] applications. You can even choose to associate individual projects, spaces, reviews and repositories with each other. You can then use shortcut links within each application. The application will 'know' automatically which space, project or repository the link is referring to.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483618</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[8]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149109</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403012</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004417</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483992</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223110</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223101</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223101</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241569253</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage6-GetJIRAandCrucibleTalking-Step1.CreateaCrucibleProjectandLinkYourCrucibleProjecttoYourJIRAProject'>Step 1. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project</a></li>
    <li><a href='#REV6-DragonsStage6-GetJIRAandCrucibleTalking-Step2.CreateaReview'>Step 2. Create a Review</a></li>
    <li><a href='#REV6-DragonsStage6-GetJIRAandCrucibleTalking-Step3.CreateaJIRAIssuefromaCrucibleReview'>Step 3. Create a JIRA Issue from a Crucible Review</a></li>
    <li><a href='#REV6-DragonsStage6-GetJIRAandCrucibleTalking-Step4.AddaCrucibleGadgettoJIRA'>Step 4. Add a Crucible Gadget to JIRA</a></li>
    <li><a href='#REV6-DragonsStage6-GetJIRAandCrucibleTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483992</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233767181</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3.5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004495</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223110</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391071</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227413907</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912465</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483992</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118092</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403012</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912471</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118078</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402056</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004380</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226787473</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416209</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004376</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118072</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403238</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage8-InstallBamboo-Step1.CreateyourBambooDatabaseinPostgreSQL'>Step 1. Create your Bamboo Database in PostgreSQL</a></li>
    <li><a href='#REV4-DragonsStage8-InstallBamboo-Step2.InstallBamboo'>Step 2. Install Bamboo</a></li>
    <li><a href='#REV4-DragonsStage8-InstallBamboo-Step3.SetUpBamboo'>Step 3. Set Up Bamboo</a></li>
    <li><a href='#REV4-DragonsStage8-InstallBamboo-Step4.HookBamboouptoCrowd'>Step 4. Hook Bamboo up to Crowd</a></li>
    <li><a href='#REV4-DragonsStage8-InstallBamboo-Step5.GetBambooandJIRATalking'>Step 5. Get Bamboo and JIRA Talking</a></li>
    <li><a href='#REV4-DragonsStage8-InstallBamboo-Step6.SetupaProjectandRunaBuild'>Step 6. Set up a Project and Run a Build</a></li>
    <li><a href='#REV4-DragonsStage8-InstallBamboo-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">189891536</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226791000</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912482</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005062</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227414394</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3.1.3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416209</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">189891544</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483533</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005068</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667967</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005070</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241567096</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483246</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912799</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5.6.4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961680</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169548</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004495</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005074</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483533</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005070</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169543</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667759</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage5-InstallFishEyeandCrucible-Step1.CreateyourFishEyeDatabaseinPostgreSQL'>Step 1. Create your FishEye Database in PostgreSQL</a></li>
    <li><a href='#REV5-DragonsStage5-InstallFishEyeandCrucible-Step2.InstallFishEyeandCrucible'>Step 2. Install FishEye and Crucible</a></li>
    <li><a href='#REV5-DragonsStage5-InstallFishEyeandCrucible-Step3.SetUpFishEye%2FCrucibleandConnecttoPostgreSQLDatabase'>Step 3. Set Up FishEye/Crucible and Connect to PostgreSQL Database</a></li>
    <li><a href='#REV5-DragonsStage5-InstallFishEyeandCrucible-Step4.HookFishEye%2FCrucibleuptoCrowd'>Step 4. Hook FishEye/Crucible up to Crowd</a></li>
    <li><a href='#REV5-DragonsStage5-InstallFishEyeandCrucible-Step5.ConnectFishEyetoSubversion'>Step 5. Connect FishEye to Subversion</a></li>
    <li><a href='#REV5-DragonsStage5-InstallFishEyeandCrucible-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233767179</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402056</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004506</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">179438226</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226787473</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4.3.4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">234652404</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223903985</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912482</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402874</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118097</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
* [Developer Network|DEVNET:]
* [Plugin Development Platform|PLUGINFRAMEWORK:]
* [Gadgets|GADGETDEV:]
* [REST APIs|REST:]
* [Confluence|CONFDEV:]
* [JIRA|JIRA:JIRA Development Hub]
* [GreenHopper|GHDEV:]
* [Bamboo|BAMBOODEV:]
* [Crowd|CROWDDEV:]
* [FishEye/Crucible|FECRUDEV:]
* [Clover|CLOVER:Clover Development Hub]
* [Atlassian Connector for Eclipse|IDEPLUGIN:Atlassian Connector for Eclipse]
* [Atlassian Connector for IntelliJ IDEA|IDEPLUGIN:Atlassian Connector for IntelliJ IDEA]
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502786</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004976</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#Testingthetemplate-ShortDescription'>Short Description</a></li>
    <li><a href='#Testingthetemplate-FullDescription'>Full Description</a></li>
    <li><a href='#Testingthetemplate-Components'>Components</a></li>
    <li><a href='#Testingthetemplate-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#Testingthetemplate-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403012</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[12]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667759</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168461907</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005074</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118078</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Below is a matrix showing the browsers supported by each Atlassian product.

<<< Information to be supplied >>>
<<< Information to be supplied >>>
<<< Information to be supplied >>>
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215485085</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148780</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483618</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208142357</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">170001525</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Atlassian is moving towards wider and more intimate integration between the different applications we develop. Providing a common [plugin framework|PLUGINFRAMEWORK:] is a key part of this initiative, because the plugin framework will help developers (both Atlassians and others) to write plugins that work on more than one of the products. It will also allow plugins on each product to have a consistent look and behaviour from a user's point of view, even when the plugin works on only one application.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149496</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223903914</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149158</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912465</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502895</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step1.CreateyourBambooDatabaseinPostgreSQL'>Step 1. Create your Bamboo Database in PostgreSQL</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step2.InstallBamboo'>Step 2. Install Bamboo</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step3.SetUpBamboo'>Step 3. Set Up Bamboo</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step4.HookBamboouptoCrowd'>Step 4. Hook Bamboo up to Crowd</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step5.GetBambooandJIRATalking'>Step 5. Get Bamboo and JIRA Talking</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Step6.SetupaProjectandRunaBuild'>Step 6. Set up a Project and Run a Build</a></li>
    <li><a href='#CopyofDragonsStage7-InstallBamboo-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">170001525</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502786</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">234652404</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483654</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005062</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168004049</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005068</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242253971</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage8-BambooGadgetsandJIRAVictory-AddTwoBambooGadgetstoJIRA'>Add Two Bamboo Gadgets to JIRA</a></li>
    <li><a href='#REV6-DragonsStage8-BambooGadgetsandJIRAVictory-TheBattleisWon%2CtheDragonisSlain'>The Battle is Won, the Dragon is Slain</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483825</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489769</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707156</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[84]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207487342</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411670</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2.6]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411672</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2.6]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707149</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[106]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707163</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[42]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200710347</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#AtlassianApplicationConfiguration-DocumentationLinks-DatabaseDocumentation'>Database Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241568600</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168004049</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#FishEyeRepositoryViewsinJIRA-ShortDescription'>Short Description</a></li>
    <li><a href='#FishEyeRepositoryViewsinJIRA-FullDescription'>Full Description</a></li>
<ul>
    <li><a href='#FishEyeRepositoryViewsinJIRA-WhatistheJIRAFishEyePlugin%3F'>What is the JIRA FishEye Plugin?</a></li>
    <li><a href='#FishEyeRepositoryViewsinJIRA-AnExample'>An Example</a></li>
</ul>
    <li><a href='#FishEyeRepositoryViewsinJIRA-Components'>Components</a></li>
    <li><a href='#FishEyeRepositoryViewsinJIRA-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#FishEyeRepositoryViewsinJIRA-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707158</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[25]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215485085</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step1.CreateyourConfluenceDatabaseinPostgreSQL'>Step 1. Create your Confluence Database in PostgreSQL</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step2.InstallConfluence'>Step 2. Install Confluence</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step3.SetUpConfluence'>Step 3. Set Up Confluence</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step4.HookConfluenceuptoCrowd'>Step 4. Hook Confluence up to Crowd</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step5.GetJIRAandConfluenceTalking'>Step 5. Get JIRA and Confluence Talking</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step6.CreateaWikiSpace'>Step 6. Create a Wiki Space</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step7.AddaJIRAGadgetandMacrotoyourConfluencePage'>Step 7. Add a JIRA Gadget and Macro to your Confluence Page</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Step8.AddaConfluenceGadgettoJIRA'>Step 8. Add a Confluence Gadget to JIRA</a></li>
    <li><a href='#NewcopyofDragonsStage4-InstallConfluence-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707149</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496157</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241567096</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241567096</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[25]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489769</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707156</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502895</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203390994</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707154</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570857</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254000</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step1.CheckyourJavaDevelopmentKit'>Step 1. Check your Java Development Kit</a></li>
    <li><a href='#REV6-DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step2%3AInstallyourPostgreSQLDatabaseServer'>Step 2: Install your PostgreSQL Database Server</a></li>
    <li><a href='#REV6-DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step3.Optional%3ACreateyourJIRADatabaseinPostgreSQL'>Step 3. <em>Optional:</em> Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#REV6-DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step4.UpgradeJIRAIfNecessary'>Step 4. Upgrade JIRA If Necessary</a></li>
    <li><a href='#REV6-DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step5.ConfigureJIRAOptions'>Step 5. Configure JIRA Options</a></li>
    <li><a href='#REV6-DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step6.SetupaProjectandCreateyourJIRADashboard'>Step 6. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#REV6-DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483992</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage8-BambooGadgetsandJIRAVictory-Step1.AddJIRAasanOAuthConsumerinBamboo'>Step 1. Add JIRA as an OAuth Consumer in Bamboo</a></li>
    <li><a href='#CopyofDragonsStage8-BambooGadgetsandJIRAVictory-Step2.Add2BambooGadgetstoJIRA'>Step 2. Add 2 Bamboo Gadgets to JIRA</a></li>
    <li><a href='#CopyofDragonsStage8-BambooGadgetsandJIRAVictory-TheBattleisWon%2CtheDragonisSlain'>The Battle is Won, the Dragon is Slain</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707160</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570859</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">179438226</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#JIRAStudioBambooIntegration-ShortDescription'>Short Description</a></li>
    <li><a href='#JIRAStudioBambooIntegration-FullDescription'>Full Description</a></li>
    <li><a href='#JIRAStudioBambooIntegration-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483667</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707158</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707163</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207487342</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[47]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707464</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169121</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707123</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[61]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402874</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[19]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489799</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913217</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254032</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707129</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[51]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707096</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391047</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200710347</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391389</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391049</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707126</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[80]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707140</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[104]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402056</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707136</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[15]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489799</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391049</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[23]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707143</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[76]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391047</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[14]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391407</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254000</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707156</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage7-InstallBamboo-Step1.CreateyourBambooDatabaseinPostgreSQL'>Step 1. Create your Bamboo Database in PostgreSQL</a></li>
    <li><a href='#DragonsStage7-InstallBamboo-Step2.InstallBamboo'>Step 2. Install Bamboo</a></li>
    <li><a href='#DragonsStage7-InstallBamboo-Step3.SetUpBamboo'>Step 3. Set Up Bamboo</a></li>
    <li><a href='#DragonsStage7-InstallBamboo-Step4.HookBamboouptoJIRAforUserManagement'>Step 4. Hook Bamboo up to JIRA for User Management</a></li>
    <li><a href='#DragonsStage7-InstallBamboo-Step5.GetBambooandJIRATalking'>Step 5. Get Bamboo and JIRA Talking</a></li>
    <li><a href='#DragonsStage7-InstallBamboo-Step6.SetupaProjectandRunaBuild'>Step 6. Set up a Project and Run a Build</a></li>
    <li><a href='#DragonsStage7-InstallBamboo-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707123</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391365</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707120</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">234652404</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391071</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570857</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226791000</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496124</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707163</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage8-BambooGadgetsandJIRAVictory-AddTwoBambooGadgetstoJIRA'>Add Two Bamboo Gadgets to JIRA</a></li>
    <li><a href='#DragonsStage8-BambooGadgetsandJIRAVictory-TheBattleisWon%2CtheDragonisSlain'>The Battle is Won, the Dragon is Slain</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707129</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391358</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149109</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707126</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667941</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage6-GetJIRAandFishEyeTalking-Step1.AddaJIRAFishEyeApplicationLink'>Step 1. Add a JIRA-FishEye Application Link</a></li>
    <li><a href='#REV5-DragonsStage6-GetJIRAandFishEyeTalking-Step2.LinkaFishEyeRepositorytoaJIRAProjectandSubscribeJIRAtoFishEyeGadgets'>Step 2. Link a FishEye Repository to a JIRA Project and Subscribe JIRA to FishEye Gadgets</a></li>
    <li><a href='#REV5-DragonsStage6-GetJIRAandFishEyeTalking-Step3.ConfiguretheFishEyePlugininJIRA'>Step 3. Configure the FishEye Plugin in JIRA</a></li>
    <li><a href='#REV5-DragonsStage6-GetJIRAandFishEyeTalking-Step4.AddaFishEyeGadgettoJIRA'>Step 4. Add a FishEye Gadget to JIRA</a></li>
    <li><a href='#REV5-DragonsStage6-GetJIRAandFishEyeTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707158</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage8-GetJIRAandBambooTalking-Step1.SetUpBamboo%27sJIRAIntegration'>Step 1. Set Up Bamboo's JIRA Integration</a></li>
    <li><a href='#DragonsStage8-GetJIRAandBambooTalking-Step2.ConfiguretheBambooPlugininJIRA'>Step 2. Configure the Bamboo Plugin in JIRA</a></li>
    <li><a href='#DragonsStage8-GetJIRAandBambooTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254015</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707140</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage4-InstallFishEyeandCrucible-Step1.CreateyourFishEyeDatabaseinPostgreSQL'>Step 1. Create your FishEye Database in PostgreSQL</a></li>
    <li><a href='#DragonsStage4-InstallFishEyeandCrucible-Step2.InstallFishEyeandCrucible'>Step 2. Install FishEye and Crucible</a></li>
    <li><a href='#DragonsStage4-InstallFishEyeandCrucible-Step3.SetUpFishEyeandCrucible'>Step 3. Set Up FishEye and Crucible</a></li>
    <li><a href='#DragonsStage4-InstallFishEyeandCrucible-Step5.ConnectFishEyetoBitbucket'>Step 5. Connect FishEye to Bitbucket</a></li>
    <li><a href='#DragonsStage4-InstallFishEyeandCrucible-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483992</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707136</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage5-InstallAppLinks-InstallAppLinksPluginintoJIRA'>Install AppLinks Plugin into JIRA</a></li>
    <li><a href='#DragonsStage5-InstallAppLinks-InstallAppLinksPluginintoConfluence'>Install AppLinks Plugin into Confluence</a></li>
    <li><a href='#DragonsStage5-InstallAppLinks-LinkJIRAIssuesinConfluence'>Link JIRA Issues in Confluence</a></li>
    <li><a href='#DragonsStage5-InstallAppLinks-ShowConfluenceLinksinJIRA'>Show Confluence Links in JIRA</a></li>
    <li><a href='#DragonsStage5-InstallAppLinks-UsetheJIRAIssuesMacroinConfluence'>Use the JIRA Issues Macro in Confluence</a></li>
    <li><a href='#DragonsStage5-InstallAppLinks-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667759</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912465</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961680</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496414</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[18]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391067</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912471</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707149</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage3-InstallConfluence-Step1.CreateyourConfluenceDatabaseinPostgreSQL'>Step 1. Create your Confluence Database in PostgreSQL</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Step2.InstallConfluence'>Step 2. Install Confluence</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Step3.SetUpConfluence'>Step 3. Set Up Confluence</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Step4.HookConfluenceuptoJIRAforUserManagement'>Step 4. Hook Confluence up to JIRA for User Management</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Step5.GetJIRAandConfluenceTalking'>Step 5. Get JIRA and Confluence Talking</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Step6.CreateaWikiSpace'>Step 6. Create a Wiki Space</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Step7.AddSomeJIRAIssuestoyourConfluencePage'>Step 7. Add Some JIRA Issues to your Confluence Page</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Step8.AddaConfluenceGadgettoJIRA'>Step 8. Add a Confluence Gadget to JIRA</a></li>
    <li><a href='#DragonsStage3-InstallConfluence-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391373</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254028</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707096</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707143</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage5-GetJIRAandFishEyeTalking-Step1.ConfigureyourJIRASettingsinFishEye%2FCrucible'>Step 1. Configure your JIRA Settings in FishEye/Crucible</a></li>
    <li><a href='#DragonsStage5-GetJIRAandFishEyeTalking-Step2.LinkyourFishEyeandJIRAProjectsandSubscribeJIRAtoFishEye%27sGadgets'>Step 2. Link your FishEye and JIRA Projects and Subscribe JIRA to FishEye's Gadgets</a></li>
    <li><a href='#DragonsStage5-GetJIRAandFishEyeTalking-Step3.ConfiguretheFishEyePlugininJIRA'>Step 3. Configure the FishEye Plugin in JIRA</a></li>
    <li><a href='#DragonsStage5-GetJIRAandFishEyeTalking-Step4.AddaFishEyeGadgettoJIRA'>Step 4. Add a FishEye Gadget to JIRA</a></li>
    <li><a href='#DragonsStage5-GetJIRAandFishEyeTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707123</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step1.InstallJava'>Step 1. Install Java</a></li>
    <li><a href='#DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step2.InstallyourPostgreSQLDatabaseServer'>Step 2. Install your PostgreSQL Database Server</a></li>
    <li><a href='#DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step3.CreateyourCrowdDatabaseinPostgreSQL'>Step 3. Create your Crowd Database in PostgreSQL</a></li>
    <li><a href='#DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step4.InstallCrowd'>Step 4. Install Crowd</a></li>
    <li><a href='#DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Step5.SetUpCrowd'>Step 5. Set Up Crowd</a></li>
    <li><a href='#DragonsStage1-InstallJava%2CPostgreSQLandCrowd-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241569253</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483246</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707154</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913281</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707156</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148780</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage8-InstallBamboo-Step1.CreateyourBambooDatabaseinPostgreSQL'>Step 1. Create your Bamboo Database in PostgreSQL</a></li>
    <li><a href='#REV5-DragonsStage8-InstallBamboo-Step2.InstallBamboo'>Step 2. Install Bamboo</a></li>
    <li><a href='#REV5-DragonsStage8-InstallBamboo-Step3.SetUpBamboo'>Step 3. Set Up Bamboo</a></li>
    <li><a href='#REV5-DragonsStage8-InstallBamboo-Step4.HookBamboouptoCrowd'>Step 4. Hook Bamboo up to Crowd</a></li>
    <li><a href='#REV5-DragonsStage8-InstallBamboo-Step5.GetBambooandJIRATalking'>Step 5. Get Bamboo and JIRA Talking</a></li>
    <li><a href='#REV5-DragonsStage8-InstallBamboo-Step6.SetupaProjectandRunaBuild'>Step 6. Set up a Project and Run a Build</a></li>
    <li><a href='#REV5-DragonsStage8-InstallBamboo-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707140</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226791031</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707149</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004380</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Use [Crowd|http://www.atlassian.com/software/crowd] to manage users and groups simply and centrally. You can use Crowd's internal user directories or hook up your existing LDAP user bases, then link them to your web applications. Crowd provides an Administration Console for administrators as well as a Self-Service Console, allowing users to view their login permissions and to change their own passwords and user profiles.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707136</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233148669</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242253971</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149498</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5.5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411932</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">167182425</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004376</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Using [Crowd|http://www.atlassian.com/software/crowd] for single sign-on (SSO), each person needs only one username and password to access all web applications. You only need to log in once, to Crowd or a Crowd-connected application. When you start another Crowd-connected application, you will be logged in automatically. Similarly, when you log out, you will be logged out of Crowd and the other applications at the same time.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707163</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667967</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage7-GetJIRAandCrucibleTalking-Step1.EnableSubTasksforCrucible'>Step 1. Enable Sub-Tasks for Crucible</a></li>
    <li><a href='#REV5-DragonsStage7-GetJIRAandCrucibleTalking-Step2.CreateaCrucibleProjectandLinkYourCrucibleProjecttoYourJIRAProject'>Step 2. Create a Crucible Project and Link Your Crucible Project to Your JIRA Project</a></li>
    <li><a href='#REV5-DragonsStage7-GetJIRAandCrucibleTalking-Step3.CreateaReview'>Step 3. Create a Review</a></li>
    <li><a href='#REV5-DragonsStage7-GetJIRAandCrucibleTalking-Step4.CreateaJIRAIssuefromaCrucibleReview'>Step 4. Create a JIRA Issue from a Crucible Review</a></li>
    <li><a href='#REV5-DragonsStage7-GetJIRAandCrucibleTalking-Step5.AddaCrucibleGadgettoJIRA'>Step 5. Add a Crucible Gadget to JIRA</a></li>
    <li><a href='#REV5-DragonsStage7-GetJIRAandCrucibleTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707158</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707126</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage1-InstallJIRA-Step1.InstallJava'>Step 1. Install Java</a></li>
    <li><a href='#DragonsStage1-InstallJIRA-Step2.InstallyourPostgreSQLDatabaseServer'>Step 2. Install your PostgreSQL Database Server</a></li>
    <li><a href='#DragonsStage1-InstallJIRA-Step3.CreateyourJIRADatabaseinPostgreSQL'>Step 3. Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#DragonsStage1-InstallJIRA-Step4.InstallJIRA'>Step 4. Install JIRA</a></li>
    <li><a href='#DragonsStage1-InstallJIRA-Step5.SetUpJIRA'>Step 5. Set Up JIRA</a></li>
    <li><a href='#DragonsStage1-InstallJIRA-Step6.SetupaProjectandCreateyourJIRADashboard'>Step 6. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#DragonsStage1-InstallJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707129</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage2-InstallGreenHopperintoJIRA-Step1.InstallGreenHopperPluginintoJIRA'>Step 1. Install GreenHopper Plugin into JIRA</a></li>
    <li><a href='#DragonsStage2-InstallGreenHopperintoJIRA-Step2.AddAnotherJIRAIssueandaSprint'>Step 2. Add Another JIRA Issue and a Sprint</a></li>
    <li><a href='#DragonsStage2-InstallGreenHopperintoJIRA-Step3.UsetheScrumTemplateforyourProjectandAddaStory'>Step 3. Use the Scrum Template for your Project and Add a Story</a></li>
    <li><a href='#DragonsStage2-InstallGreenHopperintoJIRA-Step4.AddtheGreenHopperGadgettoyourJIRADashboard'>Step 4. Add the GreenHopper Gadget to your JIRA Dashboard</a></li>
    <li><a href='#DragonsStage2-InstallGreenHopperintoJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707160</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707143</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707123</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496132</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707140</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707120</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496128</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707136</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707129</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913275</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496139</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667982</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3.0.1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707126</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707143</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149158</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496136</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233767179</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[25]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912793</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118078</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118092</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496414</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#ApplicationLinks%28AppLinks%29-ShortDescription'>Short Description</a></li>
    <li><a href='#ApplicationLinks%28AppLinks%29-FullDescription'>Full Description</a></li>
    <li><a href='#ApplicationLinks%28AppLinks%29-Components'>Components</a></li>
    <li><a href='#ApplicationLinks%28AppLinks%29-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#ApplicationLinks%28AppLinks%29-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169121</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118097</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">218279135</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502786</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391049</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391047</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223903985</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">179438226</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242253971</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004417</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Use the [JIRA Issues macro|DOC:JIRA Issues Macro] to display a list of [JIRA|http://www.atlassian.com/software/jira/] issues on a [Confluence|http://www.atlassian.com/software/confluence/] page. The list is shown in tabular format, and is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118104</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149496</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241568600</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483667</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391049</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonswithJIRAStage2-SetUpJIRA-Step1.Optional%3ACreateyourJIRADatabaseinPostgreSQL'>Step 1. <em>Optional:</em> Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#DragonswithJIRAStage2-SetUpJIRA-Step2.UpgradeJIRAIfNecessary'>Step 2. Upgrade JIRA If Necessary</a></li>
    <li><a href='#DragonswithJIRAStage2-SetUpJIRA-Step3.ConfigureJIRAOptions'>Step 3. Configure JIRA Options</a></li>
    <li><a href='#DragonswithJIRAStage2-SetUpJIRA-Step4.ImportyourJIRAUsersintoCrowd'>Step 4. Import your JIRA Users into Crowd</a></li>
    <li><a href='#DragonswithJIRAStage2-SetUpJIRA-Step5.HookJIRAuptoCrowd'>Step 5. Hook JIRA up to Crowd</a></li>
    <li><a href='#DragonswithJIRAStage2-SetUpJIRA-Step6.SetupaProjectandCreateyourJIRADashboard'>Step 6. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#DragonswithJIRAStage2-SetUpJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241568600</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[12]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391047</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step1.CheckyourJavaDevelopmentKit'>Step 1. Check your Java Development Kit</a></li>
    <li><a href='#DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step2%3AInstallyourPostgreSQLDatabaseServer'>Step 2: Install your PostgreSQL Database Server</a></li>
    <li><a href='#DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step3.Optional%3ACreateyourJIRADatabaseinPostgreSQL'>Step 3. <em>Optional:</em> Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step4.UpgradeJIRAIfNecessary'>Step 4. Upgrade JIRA If Necessary</a></li>
    <li><a href='#DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step5.ConfigureJIRAOptions'>Step 5. Configure JIRA Options</a></li>
    <li><a href='#DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Step6.SetupaProjectandCreateyourJIRADashboard'>Step 6. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#DragonswithJIRAStage1-SetUpEnvironmentandJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241567135</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2.6]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241568600</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">167182425</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#JIRABambooIntegration-ShortDescription'>Short Description</a></li>
    <li><a href='#JIRABambooIntegration-FullDescription'>Full Description</a></li>
    <li><a href='#JIRABambooIntegration-Components'>Components</a></li>
    <li><a href='#JIRABambooIntegration-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#JIRABambooIntegration-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483533</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241567145</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2.6]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483246</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CopyofDragonsStage2-InstallJIRA-Step1.CreateyourJIRADatabaseinPostgreSQL'>Step 1. Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#CopyofDragonsStage2-InstallJIRA-Step2.InstallJIRA'>Step 2. Install JIRA</a></li>
    <li><a href='#CopyofDragonsStage2-InstallJIRA-Step3.SetUpJIRA'>Step 3. Set Up JIRA</a></li>
    <li><a href='#CopyofDragonsStage2-InstallJIRA-Step4.HookJIRAuptoCrowd'>Step 4. Hook JIRA up to Crowd</a></li>
    <li><a href='#CopyofDragonsStage2-InstallJIRA-Step5.SetupaProjectandCreateyourJIRADashboard'>Step 5. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#CopyofDragonsStage2-InstallJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118072</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254028</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391502</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961722</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496404</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961724</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391508</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118152</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912482</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4.3.4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224402874</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step1.CreateyourConfluenceDatabaseinPostgreSQL'>Step 1. Create your Confluence Database in PostgreSQL</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step2.InstallConfluence'>Step 2. Install Confluence</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step3.SetUpConfluence'>Step 3. Set Up Confluence</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step4.HookConfluenceuptoCrowd'>Step 4. Hook Confluence up to Crowd</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step5.GetJIRAandConfluenceTalking'>Step 5. Get JIRA and Confluence Talking</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step6.CreateaWikiSpace'>Step 6. Create a Wiki Space</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step7.AddaJIRAGadgetandMacrotoyourConfluencePage'>Step 7. Add a JIRA Gadget and Macro to your Confluence Page</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Step8.AddaConfluenceGadgettoJIRA'>Step 8. Add a Confluence Gadget to JIRA</a></li>
    <li><a href='#REV4-DragonsStage4-InstallConfluence-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004495</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Use the [JIRA Portlet macro|DOC:JIRA Portlet Macro] to display a portlet from your [JIRA|http://www.atlassian.com/software/jira/] site on a [Confluence|http://www.atlassian.com/software/confluence/] page. The information is dynamically updated from your JIRA site. People viewing the Confluence page will see only the JIRA issues which they are authorised to see.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168004049</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[14]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">167182425</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Integrate [JIRA|http://www.atlassian.com/software/jira/] with [Bamboo|http://www.atlassian.com/software/bamboo/] to link JIRA issues to Bamboo builds. Once you have linked JIRA issues to your builds, you can view the linked issues in your Bamboo build results and build plans. You can also view build information in JIRA via tabs on related issues, versions and projects or on portlets.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411932</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[7]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254015</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403238</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[13]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">167182425</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483654</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496414</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233767179</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step1.CreateyourConfluenceDatabaseinPostgreSQL'>Step 1. Create your Confluence Database in PostgreSQL</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step2.InstallConfluence'>Step 2. Install Confluence</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step3.SetUpConfluence'>Step 3. Set Up Confluence</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step4.HookConfluenceuptoCrowd'>Step 4. Hook Confluence up to Crowd</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step5.GetJIRAandConfluenceTalking'>Step 5. Get JIRA and Confluence Talking</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step6.CreateaWikiSpace'>Step 6. Create a Wiki Space</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step7.AddSomeJIRAIssuestoyourConfluencePage'>Step 7. Add Some JIRA Issues to your Confluence Page</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Step8.AddaConfluenceGadgettoJIRA'>Step 8. Add a Confluence Gadget to JIRA</a></li>
    <li><a href='#REV5-DragonsStage4-InstallConfluence-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215485085</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[2]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241568600</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage5-GetJIRAandFishEyeTalking-Step1.ConfigureyourJIRASettingsinFishEye%2FCrucible'>Step 1. Configure your JIRA Settings in FishEye/Crucible</a></li>
    <li><a href='#REV6-DragonsStage5-GetJIRAandFishEyeTalking-Step2.LinkyourFishEyeandJIRAProjectsandSubscribeJIRAtoFishEye%27sGadgets'>Step 2. Link your FishEye and JIRA Projects and Subscribe JIRA to FishEye's Gadgets</a></li>
    <li><a href='#REV6-DragonsStage5-GetJIRAandFishEyeTalking-Step3.ConfiguretheFishEyePlugininJIRA'>Step 3. Configure the FishEye Plugin in JIRA</a></li>
    <li><a href='#REV6-DragonsStage5-GetJIRAandFishEyeTalking-Step4.AddaFishEyeGadgettoJIRA'>Step 4. Add a FishEye Gadget to JIRA</a></li>
    <li><a href='#REV6-DragonsStage5-GetJIRAandFishEyeTalking-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391495</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254032</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118172</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489769</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[11]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208961680</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207487342</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#AfterDragons-UsingtheFreeIDEConnectors'>Using the Free IDE Connectors</a></li>
<ul>
    <li><a href='#AfterDragons-AtlassianConnectorforEclipse'>Atlassian Connector for Eclipse</a></li>
    <li><a href='#AfterDragons-AtlassianConnectorforIntelliJIDEA'>Atlassian Connector for IntelliJ IDEA</a></li>
</ul>
    <li><a href='#AfterDragons-AddingAnotherAtlassianTooltoyourSuite'>Adding Another Atlassian Tool to your Suite</a></li>
<ul>
    <li><a href='#AfterDragons-CloverforCodeCoverage'>Clover for Code Coverage</a></li>
</ul>
    <li><a href='#AfterDragons-HintsafterInitialSetup'>Hints after Initial Setup</a></li>
<ul>
    <li>Adding Users to your Atlassian Integrated Suite</li>
    <li>Running Bamboo in a Console Window</li>
</ul>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168004049</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Use the JIRA FishEye Plugin to view your [FishEye|http://www.atlassian.com/software/fisheye] repository information inside [JIRA|http://www.atlassian.com/software/jira]. This allows you to link changesets inside your Subversion, CVS or Perforce repositories.

]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149496</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223179</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483618</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233149496</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonsStage3-InstallGreenHopperintoJIRA-Step1.InstallGreenHopperPluginintoJIRA'>Step 1. Install GreenHopper Plugin into JIRA</a></li>
    <li><a href='#REV5-DragonsStage3-InstallGreenHopperintoJIRA-Step2.AddAnotherJIRAIssueandaSprint'>Step 2. Add Another JIRA Issue and a Sprint</a></li>
    <li><a href='#REV5-DragonsStage3-InstallGreenHopperintoJIRA-Step3.UsetheScrumTemplateforyourProjectandAddaStory'>Step 3. Use the Scrum Template for your Project and Add a Story</a></li>
    <li><a href='#REV5-DragonsStage3-InstallGreenHopperintoJIRA-Step4.AddtheGreenHopperGadgettoyourJIRADashboard'>Step 4. Add the GreenHopper Gadget to your JIRA Dashboard</a></li>
    <li><a href='#REV5-DragonsStage3-InstallGreenHopperintoJIRA-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254000</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241567096</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235667759</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496414</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240912465</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[13]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">189891536</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570859</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[3.1.3]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005068</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707464</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#DragonsStage7-ConfigureCrucible-EnableCrucible'>Enable Crucible</a></li>
    <li><a href='#DragonsStage7-ConfigureCrucible-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">224403012</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502895</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">189891544</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005062</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[6]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207489799</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[39]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208142357</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">218279135</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">234652404</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242253971</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">168461907</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">207487342</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118206</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
REST (Representational state transfer) is an architectural style used in the design of software systems. REST is a set of rules (constraints) that the system architecture should follow (conform to). By conforming to given constraints, the architecture provides a uniform interface which other systems can interact with.

Compare this with an 'unconstrained' architecture, which allows function calls, method invocations, remote procedure calls, and other messages that are only understood by a specific server or by a small subset of components in the architecture.

You may hear people saying that REST focuses on _nouns_ instead of _verbs_. In RESTful systems, API development focuses on defining pieces of information that can be retrieved and manipulated (nouns) using standard requests. In unRESTful systems, developers might add special function calls or interfaces to the architecture (verbs). 

In RESTful systems, every component of the architecture understands all requests and responses. 
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">165118208</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
* [Architectural Styles and the Design of Network-based Software Architectures|http://www.ics.uci.edu/~fielding/pubs/dissertation/abstract.htm], a dissertation by Roy Fielding
* [REST in plain English|http://rest.blueoxen.net/cgi-bin/wiki.pl?RestInPlainEnglish]
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">226169121</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223110</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">233767179</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">223223101</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570857</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[23]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005074</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005070</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[5]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707464</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">242254000</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">235668316</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">234652404</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV5-DragonswithJIRAStage2-SetUpJIRA-Step1.Optional%3ACreateyourJIRADatabaseinPostgreSQL'>Step 1. <em>Optional:</em> Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#REV5-DragonswithJIRAStage2-SetUpJIRA-Step2.UpgradeJIRAIfNecessary'>Step 2. Upgrade JIRA If Necessary</a></li>
    <li><a href='#REV5-DragonswithJIRAStage2-SetUpJIRA-Step3.ConfigureJIRAOptions'>Step 3. Configure JIRA Options</a></li>
    <li><a href='#REV5-DragonswithJIRAStage2-SetUpJIRA-Step4.ImportyourJIRAUsersintoCrowd'>Step 4. Import your JIRA Users into Crowd</a></li>
    <li><a href='#REV5-DragonswithJIRAStage2-SetUpJIRA-Step5.HookJIRAuptoCrowd'>Step 5. Hook JIRA up to Crowd</a></li>
    <li><a href='#REV5-DragonswithJIRAStage2-SetUpJIRA-Step6.SetupaProjectandCreateyourJIRADashboard'>Step 6. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#REV5-DragonswithJIRAStage2-SetUpJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208142357</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[4]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005074</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#CrucibleReviewsinIDEA-ShortDescription'>Short Description</a></li>
    <li><a href='#CrucibleReviewsinIDEA-FullDescription'>Full Description</a></li>
    <li><a href='#CrucibleReviewsinIDEA-Components'>Components</a></li>
    <li><a href='#CrucibleReviewsinIDEA-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#CrucibleReviewsinIDEA-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005070</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#JIRAIssuesinIDEA-ShortDescription'>Short Description</a></li>
    <li><a href='#JIRAIssuesinIDEA-FullDescription'>Full Description</a></li>
    <li><a href='#JIRAIssuesinIDEA-Components'>Components</a></li>
    <li><a href='#JIRAIssuesinIDEA-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#JIRAIssuesinIDEA-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227414394</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227411932</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416209</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonswithJIRAStage2-SetUpJIRA-Step1.Optional%3ACreateyourJIRADatabaseinPostgreSQL'>Step 1. <em>Optional:</em> Create your JIRA Database in PostgreSQL</a></li>
    <li><a href='#REV4-DragonswithJIRAStage2-SetUpJIRA-Step2.UpgradeJIRAIfNecessary'>Step 2. Upgrade JIRA If Necessary</a></li>
    <li><a href='#REV4-DragonswithJIRAStage2-SetUpJIRA-Step3.ConfigureJIRAOptions'>Step 3. Configure JIRA Options</a></li>
    <li><a href='#REV4-DragonswithJIRAStage2-SetUpJIRA-Step4.ImportyourJIRAUsersintoCrowd'>Step 4. Import your JIRA Users into Crowd</a></li>
    <li><a href='#REV4-DragonswithJIRAStage2-SetUpJIRA-Step5.HookJIRAuptoCrowd'>Step 5. Hook JIRA up to Crowd</a></li>
    <li><a href='#REV4-DragonswithJIRAStage2-SetUpJIRA-Step6.SetupaProjectandCreateyourJIRADashboard'>Step 6. Set up a Project and Create your JIRA Dashboard</a></li>
    <li><a href='#REV4-DragonswithJIRAStage2-SetUpJIRA-Victory%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005068</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#BambooBuildsinIDEA-ShortDescription'>Short Description</a></li>
    <li><a href='#BambooBuildsinIDEA-FullDescription'>Full Description</a></li>
    <li><a href='#BambooBuildsinIDEA-Components'>Components</a></li>
    <li><a href='#BambooBuildsinIDEA-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#BambooBuildsinIDEA-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166004976</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">215483533</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496414</property>
<property name="key" type="string"><![CDATA[confluence.repository.plugin.present]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[true]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166005062</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#BambooBuildsinEclipse-ShortDescription'>Short Description</a></li>
    <li><a href='#BambooBuildsinEclipse-FullDescription'>Full Description</a></li>
    <li><a href='#BambooBuildsinEclipse-Components'>Components</a></li>
    <li><a href='#BambooBuildsinEclipse-VersionMatrix'>Version Matrix</a></li>
    <li><a href='#BambooBuildsinEclipse-Documentation'>Documentation</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208502895</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166528011</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">166528011</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">179438226</property>
<property name="key" type="string"><![CDATA[confluence.excerpt]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[
Elastic Bamboo is integrated with JIRA Studio.
]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">240913217</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step1.CreateyourConfluenceDatabaseinPostgreSQL'>Step 1. Create your Confluence Database in PostgreSQL</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step2.InstallConfluence'>Step 2. Install Confluence</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step3.SetUpConfluence'>Step 3. Set Up Confluence</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step4.HookConfluenceuptoJIRAforUserManagement'>Step 4. Hook Confluence up to JIRA for User Management</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step5.GetJIRAandConfluenceTalking'>Step 5. Get JIRA and Confluence Talking</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step6.CreateaWikiSpace'>Step 6. Create a Wiki Space</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step7.AddSomeJIRAIssuestoyourConfluencePage'>Step 7. Add Some JIRA Issues to your Confluence Page</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Step8.AddaConfluenceGadgettoJIRA'>Step 8. Add a Confluence Gadget to JIRA</a></li>
    <li><a href='#REV6-DragonsStage3-InstallConfluence-Victory%5C%21'>Victory!</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">200707464</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cachedVersion]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[12]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496404</property>
<property name="key" type="string"><![CDATA[isbookmark]]></property>
</composite-id>
<property name="type">5</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">208142357</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391358</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416181</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-DragonsStage9-BambooGadgetsandJIRAVictory-Step1.AddJIRAasanOAuthConsumerinBamboo'>Step 1. Add JIRA as an OAuth Consumer in Bamboo</a></li>
    <li><a href='#REV4-DragonsStage9-BambooGadgetsandJIRAVictory-Step2.Add2BambooGadgetstoJIRA'>Step 2. Add 2 Bamboo Gadgets to JIRA</a></li>
    <li><a href='#REV4-DragonsStage9-BambooGadgetsandJIRAVictory-TheBattleisWon%2CtheDragonisSlain'>The Battle is Won, the Dragon is Slain</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">164496414</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:tocCount]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[1]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570859</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">241570857</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">227416189</property>
<property name="key" type="string"><![CDATA[net.customware.confluence.plugin.toc:cached:1]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[<div>
<ul>
    <li><a href='#REV4-AfterDragons-UsingtheFreeIDEConnectors'>Using the Free IDE Connectors</a></li>
<ul>
    <li><a href='#REV4-AfterDragons-AtlassianConnectorforEclipse'>Atlassian Connector for Eclipse</a></li>
    <li><a href='#REV4-AfterDragons-AtlassianConnectorforIntelliJIDEA'>Atlassian Connector for IntelliJ IDEA</a></li>
</ul>
    <li><a href='#REV4-AfterDragons-AddingAnotherAtlassianTooltoyourSuite'>Adding Another Atlassian Tool to your Suite</a></li>
<ul>
    <li><a href='#REV4-AfterDragons-CloverforCodeCoverage'>Clover for Code Coverage</a></li>
</ul>
    <li><a href='#REV4-AfterDragons-HintsafterInitialSetup'>Hints after Initial Setup</a></li>
</ul></div>]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
<object class="BucketPropertySetItem" package="bucket.user.propertyset">
<composite-id><property name="entityName" type="string"><![CDATA[confluence_ContentEntityObject]]></property>
<property name="entityId" type="long">203391365</property>
<property name="key" type="string"><![CDATA[socialbookmarkingurl]]></property>
</composite-id>
<property name="type">6</property>
<property name="booleanVal">false</property>
<property name="doubleVal">0.0</property>
<property name="stringVal"/><property name="textVal"><![CDATA[]]></property>
<property name="longVal">0</property>
<property name="intVal">0</property>
<property name="dateVal"/></object>
</hibernate-generic>